/*
 * Portal Público Prefeitura de Arneiroz — revisão visual 2026
 * Camada final de layout. Mantém a identidade existente e normaliza
 * espaçamentos, cabeçalho, páginas internas, responsividade e acessibilidade.
 */
:root{
    --arneiroz-azul:#005bbf;
    --arneiroz-azul-2:#0079ff;
    --arneiroz-verde:#18a54a;
    --arneiroz-amarelo:#f2bd16;
    --arneiroz-texto:#1e2732;
    --arneiroz-muted:#66707c;
    --arneiroz-linha:#dfe4e8;
    --arneiroz-fundo:#f5f6f7;
}
body.portal-compacto{background:#fff!important;color:var(--arneiroz-texto);}

/* Barra institucional superior */
body.portal-compacto .govbar{background:var(--arneiroz-azul);font-size:.78rem;min-height:30px;}
body.portal-compacto .govbar a{font-weight:600;opacity:.96;}
body.portal-compacto .govbar .btn-plain{
    min-width:27px;height:24px;padding:0 5px;border-radius:2px;font-size:.72rem;
}

/* Cabeçalho mais baixo, sem grandes áreas vazias */
body.portal-compacto .topo-hero{
    background:#fff;
    padding:.45rem 0 .35rem;
    border:0;
}
body.portal-compacto .topo-hero .container{margin-top:0!important;}
body.portal-compacto .topo-hero .unicef{width:50px;}
body.portal-compacto .topo-hero .brasao{max-width:225px;}
body.portal-compacto .skyline{display:none;}
.portal-header-tools{width:100%;max-width:330px;}
.portal-header-search{
    height:36px;
    display:flex;
    border:1px solid #cfd6dc;
    background:#fff;
}
.portal-header-search input{
    min-width:0;flex:1;border:0;outline:0;padding:0 10px;font-size:.82rem;color:#26313d;
}
.portal-header-search button{
    width:40px;border:0;background:var(--arneiroz-azul);color:#fff;
}
.portal-header-links{
    display:flex;justify-content:flex-end;gap:14px;margin-top:7px;font-size:.76rem;font-weight:700;
}
.portal-header-links a{color:#303942;}
.portal-header-links a:hover{color:var(--arneiroz-azul);}

/* Menu: mais reto e compacto */
body.portal-compacto .megamenu{border-top:1px solid #e6e9ec!important;border-bottom:3px solid var(--arneiroz-azul);}
body.portal-compacto .megamenu .wrapper{padding:.18rem 1rem;}
body.portal-compacto .nav-links{gap:.12rem;}
body.portal-compacto .nav-links a,
body.portal-compacto .nav-links label{border-radius:0;padding:.62rem .68rem;font-size:.82rem;}
body.portal-compacto .drop-menu,
body.portal-compacto .mega-box{border-radius:0;}
body.portal-compacto .barras-data{
    min-height:24px;padding:3px 0;font-size:.76rem;
    background:linear-gradient(90deg,var(--arneiroz-azul) 0%,var(--arneiroz-azul-2) 55%,var(--arneiroz-verde) 82%,var(--arneiroz-amarelo) 100%);
}

/* Banner imediatamente após o menu */
body.portal-compacto .main-carousel{margin:0;background:#e9edf1;}
body.portal-compacto .main-carousel .carousel-item{
    height:34vh;min-height:255px;max-height:365px;
}

/* Cabeçalhos de seção, estilo compacto */
.section-line{
    display:flex;justify-content:space-between;align-items:flex-end;
    border-bottom:2px solid var(--arneiroz-azul);
    padding-bottom:7px;margin-bottom:13px;
}
.section-kicker{
    display:block;color:var(--arneiroz-verde);font-size:.66rem;font-weight:800;
    letter-spacing:.08em;margin-bottom:1px;
}
.section-line h2{
    margin:0;font-size:1.28rem;line-height:1.1;font-weight:800;color:#222c36;
}
.section-more{
    font-size:.76rem;font-weight:700;color:var(--arneiroz-azul);white-space:nowrap;
}

/* Notícias: pouca margem e cantos discretos */
.home-noticias{padding-top:18px;padding-bottom:10px;}
body.portal-compacto #carouselNews .carousel-inner,
body.portal-compacto #carouselNews .carousel-item,
body.portal-compacto #carouselNews img{border-radius:2px!important;}
body.portal-compacto #carouselNews img{height:330px!important;object-fit:cover;}
body.portal-compacto #carouselNews .carousel-caption{
    left:0;right:0;bottom:0;border-radius:0!important;
    background:linear-gradient(0deg,rgba(0,0,0,.86),rgba(0,0,0,.38))!important;
    text-align:left;padding:38px 16px 12px!important;
}
body.portal-compacto #carouselNews .carousel-caption h5{font-size:1rem;margin-bottom:3px;}
body.portal-compacto #carouselNews .carousel-caption p{font-size:.78rem;margin:0;}
body.portal-compacto .home-noticias .col-lg-4>h5{
    font-size:1rem;border-bottom:2px solid var(--arneiroz-azul)!important;padding-bottom:8px!important;margin-bottom:6px!important;
}
body.portal-compacto .home-noticias .list-group-item{
    border-radius:0!important;padding:.55rem 0;border-left:0;border-right:0;
}
body.portal-compacto .home-noticias .list-group-item img{
    width:76px!important;height:54px!important;border-radius:2px!important;
}
body.portal-compacto .home-noticias .list-group-item h6{font-size:.82rem;line-height:1.25;margin-bottom:2px!important;}
body.portal-compacto .home-noticias .list-group-item small{font-size:.69rem;}

/* Acesso rápido: preserva o estilo aprovado */
.quick-access-section{
    background:#f8fafb;
    border-top:1px solid var(--arneiroz-linha);
    border-bottom:1px solid var(--arneiroz-linha);
    padding:18px 0 20px;
    margin-top:8px;
}
.quick-access-section .section-line{margin-bottom:12px;}
body.portal-compacto .card-inicial{
    position:relative;overflow:hidden;min-height:105px;
    background:#fff;border:1px solid #dfe5e9;border-radius:14px;
    box-shadow:0 5px 14px rgba(23,32,51,.055)!important;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
body.portal-compacto .card-inicial::before{
    content:'';position:absolute;height:4px;left:0;right:0;top:0;
    background:linear-gradient(90deg,var(--arneiroz-azul),var(--arneiroz-verde),var(--arneiroz-amarelo));opacity:.85;
}
body.portal-compacto .card-inicial:hover{
    transform:translateY(-3px);border-color:#c8d7e4;
    box-shadow:0 10px 22px rgba(23,32,51,.10)!important;
}
body.portal-compacto .card-inicial i{
    width:43px;height:43px;display:inline-flex;align-items:center;justify-content:center;
    border-radius:11px;background:#f2f6f9;font-size:1.25rem!important;
}
body.portal-compacto .card-inicial p{color:#303b4e;line-height:1.15;}

/* Unidades: mais retas e compactas */
body.portal-compacto .unidades-atendimento{padding-top:18px;padding-bottom:6px;}
body.portal-compacto .unidades-atendimento .row{--bs-gutter-x:.8rem;--bs-gutter-y:.8rem;}
body.portal-compacto .unidades-atendimento .card{
    min-height:82px;padding:.8rem!important;border:1px solid var(--arneiroz-linha);
    border-radius:3px;box-shadow:none!important;background:#fff;
}
body.portal-compacto .unidades-atendimento .card:hover{border-color:var(--arneiroz-azul);background:#f8fbff;}
body.portal-compacto .unidades-atendimento .card i{font-size:1.35rem;margin-bottom:5px;}
body.portal-compacto .unidades-atendimento .card p{margin:0;font-size:.78rem;font-weight:700;}

/* Publicações oficiais: modelo denso, sem cartões gigantes */
body.portal-compacto .publicacoes-home{padding-top:18px;padding-bottom:18px;}
body.portal-compacto .publicacoes-home h4{font-size:.94rem;font-weight:800;margin-bottom:8px!important;text-align:left!important;}
body.portal-compacto .publicacoes-home .nav-tabs{
    justify-content:flex-start!important;border-bottom:1px solid #cfd6dc;
}
body.portal-compacto .publicacoes-home .nav-tabs .nav-link{
    border-radius:0!important;font-size:.72rem;padding:.42rem .58rem;color:#43505d;
}
body.portal-compacto .publicacoes-home .tab-content{
    border-radius:0!important;box-shadow:none!important;background:#fff!important;
    padding:.65rem!important;border:1px solid #dfe4e8!important;border-top:0!important;
}
body.portal-compacto .publicacoes-home .table{margin-bottom:0;font-size:.75rem;}
body.portal-compacto .publicacoes-home .table td{padding:.42rem .28rem;}

/* Radar e satisfação */
body.portal-compacto section.container:has(.radar-image){padding-top:8px;padding-bottom:16px;}
body.portal-compacto section.container:has(.radar-image) .p-3{
    border-radius:3px!important;box-shadow:none!important;border:1px solid var(--arneiroz-linha);
}
body.portal-compacto .radar-image{border-radius:2px!important;}

/* Rodapé mais compacto */
body.portal-compacto .footer{margin-top:0!important;padding:1.7rem 0 1.2rem;}
body.portal-compacto .footer .ratio{border-radius:2px!important;}

/* Remove arredondamentos exagerados apenas fora do acesso rápido/Jucá */
body.portal-compacto .publicacoes-home .rounded,
body.portal-compacto .home-noticias .rounded{border-radius:2px!important;}

/* Mobile */
@media(max-width:991.98px){
    body.portal-compacto .topo-hero{padding:.35rem 0;}
    body.portal-compacto .topo-hero .brasao{max-width:175px;margin-left:0;}
    body.portal-compacto .topo-hero .unicef{width:42px;}
    body.portal-compacto .main-carousel .carousel-item{height:230px;min-height:230px;}
    body.portal-compacto #carouselNews img{height:280px!important;}
    .section-line{align-items:center;}
    .section-line h2{font-size:1.12rem;}
}
@media(max-width:575.98px){
    body.portal-compacto .main-carousel .carousel-item{height:185px;min-height:185px;}
    body.portal-compacto #carouselNews img{height:230px!important;}
    .quick-access-section{padding:14px 0 16px;}
    body.portal-compacto .card-inicial{min-height:96px;padding:.7rem!important;}
    body.portal-compacto .barras-data{text-align:center;}
}

/* Alto contraste continua utilizável */
body.high-contrast.portal-compacto .section-line h2,
body.high-contrast.portal-compacto .card-inicial p{color:#fff!important;}
body.high-contrast.portal-compacto .card-inicial,
body.high-contrast.portal-compacto .unidades-atendimento .card,
body.high-contrast.portal-compacto .publicacoes-home .tab-content{background:#000!important;border-color:#fff!important;}


/* ===== REFINAMENTO GLOBAL ===== */
html{scroll-padding-top:78px;}
body.portal-compacto{
  min-height:100vh;
  background:#fff!important;
  color:#1f2a35!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.portal-compacto *{box-sizing:border-box;}
body.portal-compacto a{transition:color .16s ease,background-color .16s ease,border-color .16s ease,opacity .16s ease;}
body.portal-compacto a:hover{opacity:1;}

.portal-skip-link{
  position:fixed;left:12px;top:8px;z-index:99999;
  transform:translateY(-160%);background:#fff;color:#003f86!important;
  border:2px solid #003f86;border-radius:4px;padding:8px 12px;font-weight:800;
  box-shadow:0 4px 14px rgba(0,0,0,.16);
}
.portal-skip-link:focus{transform:translateY(0);outline:3px solid #f2bd16;outline-offset:2px;}

/* Foco de teclado consistente */
body.portal-compacto :where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid #f2bd16!important;outline-offset:2px!important;box-shadow:none!important;
}

/* ===== TOPO ===== */
body.portal-compacto .govbar{min-height:32px;padding:.18rem 0!important;}
body.portal-compacto .govbar .container{max-width:1240px;}
body.portal-compacto .govbar-links{gap:1rem!important;}
body.portal-compacto .govbar .actions{gap:.34rem!important;}
body.portal-compacto .govbar a{font-size:.75rem;}

body.portal-compacto .topo-hero{
  padding:.48rem 0 .42rem!important;
  border-bottom:0!important;
  background:#fff!important;
}
body.portal-compacto .topo-hero>.container{max-width:1240px;}
body.portal-compacto .portal-brand-row{min-height:66px;}
body.portal-compacto .topo-hero .unicef{width:46px!important;max-height:58px;object-fit:contain;}
body.portal-compacto .topo-hero .brasao{width:auto;max-width:218px!important;max-height:62px;object-fit:contain;}
.portal-logo-link{display:inline-flex;align-items:center;min-height:62px;}
.portal-header-tools{max-width:345px!important;}
.portal-header-search{height:38px!important;border-radius:4px!important;overflow:hidden;border-color:#c9d4dd!important;}
.portal-header-search input{font-size:.8rem!important;background:#fff;}
.portal-header-search button{width:42px!important;transition:background .16s ease;}
.portal-header-search button:hover{background:#004c9e!important;}
.portal-header-links{margin-top:5px!important;gap:13px!important;font-size:.73rem!important;}
.portal-header-links a{position:relative;padding-bottom:2px;}
.portal-header-links a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:#005bbf;transition:right .18s ease;}
.portal-header-links a:hover:after{right:0;}

.portal-mobile-tools{padding-top:.35rem;border-top:1px solid #edf0f2;margin-top:.25rem;display:flex;gap:.55rem;align-items:center;}
.portal-mobile-search{display:flex;flex:1;height:36px;border:1px solid #cfd7de;border-radius:4px;overflow:hidden;background:#fff;}
.portal-mobile-search input{border:0;outline:0;min-width:0;flex:1;padding:0 10px;font-size:16px;}
.portal-mobile-search button{width:40px;border:0;background:#005bbf;color:#fff;}
.portal-mobile-actions{display:flex;gap:.28rem;}
.portal-mobile-actions a,.portal-mobile-actions button{width:35px;height:35px;border:1px solid #d7dfe5;background:#fff;color:#005bbf;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;}

/* ===== MENU ===== */
body.portal-compacto .megamenu{
  min-height:47px;border-top:1px solid #edf0f2!important;border-bottom:3px solid #005bbf!important;
  box-shadow:0 2px 7px rgba(26,42,58,.06)!important;
}
body.portal-compacto .megamenu .wrapper{max-width:1240px;padding:.12rem .75rem!important;min-height:44px;}
body.portal-compacto .nav-links{gap:.05rem!important;}
body.portal-compacto .nav-links>li>a,
body.portal-compacto .nav-links>li>label{padding:.65rem .62rem!important;font-size:.77rem!important;letter-spacing:.01em;font-weight:750!important;line-height:1.15;}
body.portal-compacto .nav-links>li:first-child>a{padding-left:.75rem!important;padding-right:.75rem!important;}
body.portal-compacto .nav-links>li:first-child i{font-size:1rem!important;}
body.portal-compacto .nav-links>li>a:hover,
body.portal-compacto .nav-links>li>label:hover{background:#f3f7fb!important;color:#005bbf!important;}
body.portal-compacto .drop-menu{min-width:285px!important;border:1px solid #dce3e8!important;box-shadow:0 10px 25px rgba(24,39,55,.12)!important;padding:.32rem 0!important;}
body.portal-compacto .drop-menu li a{font-size:.77rem!important;line-height:1.25;padding:.52rem .75rem!important;border-bottom:1px solid #eef1f3;}
body.portal-compacto .drop-menu li:last-child a{border-bottom:0;}
body.portal-compacto .mega-box{width:min(850px,calc(100vw - 32px))!important;}
body.portal-compacto .mega-box .content{padding:16px!important;gap:16px!important;border:1px solid #dce3e8;box-shadow:0 10px 25px rgba(24,39,55,.12);background:#fff!important;}
body.portal-compacto .mega-box .row header{background:transparent!important;color:#25313c!important;border-radius:0!important;border-bottom:2px solid #005bbf!important;text-align:left!important;padding:0 0 6px!important;}
body.portal-compacto .mega-box .mega-links{border-left:0!important;}
body.portal-compacto .mega-box .mega-links li{padding:0!important;}
body.portal-compacto .mega-box .mega-links li a{font-size:.76rem!important;padding:.42rem 0!important;color:#34414d!important;}
body.portal-compacto .mega-box .mega-links li a:hover{background:transparent!important;color:#005bbf!important;}

body.portal-compacto .barras-data{padding:0!important;min-height:26px!important;display:flex;align-items:center;}
body.portal-compacto .barras-data>.container{max-width:1240px;}
.portal-location-date{padding:.29rem .75rem!important;font-size:.7rem;line-height:1.15;font-weight:650;}
.portal-date-separator{display:inline-block;margin:0 .42rem;opacity:.72;}

/* ===== CONTEÚDO: elimina vazios entre topo e páginas ===== */
.portal-internal-shell,.portal-home-shell{width:100%;background:#fff;}
.portal-internal-shell{padding:0!important;margin:0!important;}
.portal-internal-shell>.content-body,
.portal-internal-shell>.team-container,
.portal-internal-shell>.portal-page,
.portal-internal-shell>.esic-page,
.portal-internal-shell>.esic-cadastro-page,
.portal-internal-shell>.ouvidoria-page{
  padding:9px 0 18px!important;
  margin:0!important;
  min-height:0!important;
}
.portal-internal-shell>.content-body.pb-5,
.portal-internal-shell>.team-container.pb-5{padding-bottom:18px!important;}
.portal-internal-shell .links-navegacao{margin:0!important;padding:0!important;}
.portal-internal-shell .breadcrumb{margin:0 0 8px!important;min-height:20px;align-items:center;}
.portal-internal-shell .breadcrumb.my-3{margin-top:0!important;margin-bottom:8px!important;}
.portal-internal-shell .container,.portal-home-shell .container{max-width:1240px;}
.portal-internal-shell .container+.container{margin-top:0!important;}
.portal-internal-shell .card-principal{margin-top:0!important;}
.portal-internal-shell .page-titles,
.portal-internal-shell .banner-area,
.portal-internal-shell .page-header,
.portal-internal-shell .inner-page-header,
.portal-internal-shell .page-head-contratos,
.portal-internal-shell .busca-hero{
  margin-top:0!important;margin-bottom:10px!important;padding:10px 13px!important;
  border-radius:4px!important;
}
.portal-internal-shell .content-body h1,
.portal-internal-shell .team-container h1{font-size:1.28rem!important;}
.portal-internal-shell :where(.mt-5){margin-top:1.4rem!important;}
.portal-internal-shell :where(.mb-5){margin-bottom:1.4rem!important;}
.portal-internal-shell :where(.my-5){margin-top:1.4rem!important;margin-bottom:1.4rem!important;}
.portal-internal-shell :where(.py-5){padding-top:1.4rem!important;padding-bottom:1.4rem!important;}
.portal-internal-shell .row.g-4{--bs-gutter-y:1rem;}
.portal-internal-shell .card{border-radius:4px!important;}
.portal-internal-shell .card-body{padding:13px!important;}
.portal-internal-shell p:last-child{margin-bottom:0;}

/* títulos internos mais claros e consistentes */
.portal-internal-shell .content-body> .container:first-child h2:first-child,
.portal-internal-shell .content-body> .container:first-child h3:first-child{margin-top:0!important;}
.portal-internal-shell .faixa-verde{background:#005bbf!important;color:#fff!important;border-radius:3px!important;}
.portal-internal-shell .text-justify{text-align:justify!important;}

/* tabelas e filtros */
.portal-internal-shell .search-box,
.portal-internal-shell .busca-box,
.portal-internal-shell .filtros-box{padding:11px!important;margin-bottom:11px!important;border-radius:4px!important;}
.portal-internal-shell .table-container,.portal-internal-shell .table-responsive{border-radius:4px!important;}
.portal-internal-shell .table>:not(caption)>*>*{padding:.49rem .55rem!important;}
.portal-internal-shell .table thead th{line-height:1.2;}
.portal-internal-shell .pagination{margin-top:12px!important;margin-bottom:0!important;}

/* ===== HOME: ritmo vertical mais compacto ===== */
.portal-home-shell .main-carousel{margin:0!important;}
body.portal-compacto .main-carousel .carousel-item{height:31vh!important;min-height:235px!important;max-height:340px!important;}
.home-noticias{padding-top:14px!important;padding-bottom:8px!important;}
.quick-access-section{padding:15px 0 17px!important;margin-top:5px!important;}
body.portal-compacto .unidades-atendimento{padding-top:14px!important;padding-bottom:4px!important;}
body.portal-compacto .publicacoes-home{padding-top:14px!important;padding-bottom:14px!important;}
.section-line{margin-bottom:10px!important;padding-bottom:6px!important;}
.section-line h2{font-size:1.22rem!important;}
.section-kicker{font-size:.63rem!important;}
body.portal-compacto .card-inicial{min-height:98px!important;padding:.72rem!important;border-radius:9px!important;}
body.portal-compacto .card-inicial i{width:40px!important;height:40px!important;border-radius:8px!important;}
body.portal-compacto .unidades-atendimento .card{min-height:76px!important;padding:.68rem!important;}
body.portal-compacto #carouselNews img{height:310px!important;}

/* bloco radar/opinião também compacto em internas */
.portal-internal-shell>section.container:last-of-type,
.portal-home-shell>section.container:last-of-type{padding-top:8px;padding-bottom:14px;}
.portal-internal-shell>section.container:last-of-type .p-3,
.portal-home-shell>section.container:last-of-type .p-3{padding:12px!important;}

/* ===== RODAPÉ ===== */
body.portal-compacto .footer{padding:1.35rem 0 .9rem!important;margin-top:0!important;background:linear-gradient(180deg,#005bbf,#004b9d)!important;}
body.portal-compacto .footer>.container{max-width:1240px;}
body.portal-compacto .footer h6{font-size:.8rem;margin-bottom:.4rem!important;}
body.portal-compacto .footer p,body.portal-compacto .footer li,body.portal-compacto .footer a{font-size:.72rem!important;line-height:1.45;}
body.portal-compacto .footer ul{margin-bottom:0;}
body.portal-compacto .footer hr{margin:.8rem 0;opacity:.25;}
body.portal-compacto .footer .ratio{max-height:145px;}
body.portal-compacto .footer iframe{height:145px!important;}

/* Assistente sem cobrir conteúdo no celular */
.assistente-juca{right:16px!important;bottom:16px!important;}
.assistente-juca-toggle{width:54px!important;height:54px!important;}
.assistente-juca-toggle img{width:37px!important;height:37px!important;}
.assistente-juca-chat{width:min(360px,calc(100vw - 24px))!important;height:min(480px,calc(100vh - 110px))!important;}

/* alto contraste - mantém a hierarquia visual */
body.high-contrast.portal-compacto .topo-hero,
body.high-contrast.portal-compacto .megamenu,
body.high-contrast.portal-compacto .portal-internal-shell,
body.high-contrast.portal-compacto .portal-home-shell,
body.high-contrast.portal-compacto .portal-mobile-search,
body.high-contrast.portal-compacto .portal-mobile-actions a,
body.high-contrast.portal-compacto .portal-mobile-actions button{background:#000!important;color:#fff!important;border-color:#fff!important;}
body.high-contrast.portal-compacto .portal-header-search input,
body.high-contrast.portal-compacto .portal-mobile-search input{background:#000!important;color:#fff!important;}
body.high-contrast.portal-compacto .barras-data{background:#000!important;border-top:1px solid #fff;border-bottom:1px solid #fff;}

/* ===== MOBILE ===== */
@media(max-width:991.98px){
  html{scroll-padding-top:62px;}
  body.portal-compacto .topo-hero{padding:.35rem 0!important;}
  body.portal-compacto .portal-brand-row{min-height:52px;}
  body.portal-compacto .topo-hero .unicef{width:38px!important;}
  body.portal-compacto .topo-hero .brasao{max-width:168px!important;max-height:50px;margin-left:0!important;}
  .portal-logo-link{min-height:50px;}
  body.portal-compacto .megamenu{min-height:43px;}
  body.portal-compacto .megamenu .wrapper{min-height:40px;justify-content:flex-end!important;}
  body.portal-compacto .megamenu .menu-btn{position:static!important;transform:none!important;margin-left:auto;padding:.35rem .55rem!important;color:#005bbf!important;}
  body.portal-compacto .megamenu .nav-links{padding:3.2rem 1rem 1.2rem!important;width:min(315px,88vw)!important;gap:.16rem!important;box-shadow:8px 0 30px rgba(0,0,0,.18)!important;}
  body.portal-compacto .megamenu .nav-links>li>a,
  body.portal-compacto .megamenu .nav-links>li>label{padding:.64rem .7rem!important;font-size:.81rem!important;border-bottom:1px solid #edf0f2;}
  body.portal-compacto .megamenu .drop-menu,
  body.portal-compacto .megamenu .mega-box{background:#f7f9fb!important;margin-top:0!important;}
  body.portal-compacto .megamenu .mega-box .content{display:block!important;padding:8px 12px!important;border:0!important;box-shadow:none!important;}
  body.portal-compacto .megamenu .mega-box .content .row{width:100%!important;margin:0 0 10px!important;}
  body.portal-compacto .megamenu .cancel-btn{color:#1f2a35!important;}
  .portal-location-date{text-align:center;font-size:.66rem!important;}
  .portal-internal-shell>.content-body,.portal-internal-shell>.team-container{padding-top:7px!important;padding-bottom:15px!important;}
  .portal-internal-shell .container,.portal-home-shell .container{--bs-gutter-x:1.15rem;}
  body.portal-compacto .main-carousel .carousel-item{height:220px!important;min-height:220px!important;}
  body.portal-compacto #carouselNews img{height:270px!important;}
}
@media(max-width:575.98px){
  .portal-mobile-tools{gap:.4rem;}
  .portal-mobile-actions{gap:.2rem;}
  .portal-mobile-actions a,.portal-mobile-actions button{width:33px;height:33px;}
  .portal-location-date .portal-date-separator,.portal-location-date span:last-child{display:none;}
  .portal-internal-shell .breadcrumb{font-size:.69rem!important;margin-bottom:6px!important;}
  .portal-internal-shell .page-titles,.portal-internal-shell .banner-area,.portal-internal-shell .page-header,.portal-internal-shell .page-head-contratos{padding:9px 10px!important;margin-bottom:8px!important;}
  .portal-internal-shell .content-body h1,.portal-internal-shell .team-container h1{font-size:1.16rem!important;}
  body.portal-compacto .main-carousel .carousel-item{height:172px!important;min-height:172px!important;}
  body.portal-compacto #carouselNews img{height:220px!important;}
  .home-noticias{padding-top:11px!important;}
  .quick-access-section{padding:12px 0 14px!important;}
  body.portal-compacto .unidades-atendimento{padding-top:11px!important;}
  body.portal-compacto .publicacoes-home{padding-top:11px!important;}
  .section-line h2{font-size:1.08rem!important;}
  .section-more{font-size:.69rem!important;}
  body.portal-compacto .card-inicial{min-height:90px!important;}
  .assistente-juca{right:10px!important;bottom:10px!important;}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
}

body.portal-compacto .nav-links a.portal-nav-current{color:#005bbf!important;background:#f0f6fc!important;box-shadow:inset 0 -3px 0 #005bbf;}


/* =====================================================================
   PORTAL PÚBLICO 2026 — V1.1
   Largura fluida em desktop largo
   Corrige excesso de áreas vazias laterais sem comprometer notebooks,
   tablets ou celulares.
   ===================================================================== */
@media (min-width: 992px){
  /* topo acompanha melhor monitores Full HD / QHD */
  body.portal-compacto .govbar .container,
  body.portal-compacto .topo-hero > .container,
  body.portal-compacto .megamenu .wrapper,
  body.portal-compacto .barras-data > .container,
  body.portal-compacto .footer > .container{
    width:calc(100% - 48px)!important;
    max-width:1600px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* páginas internas ganham mais área útil — foco da V1.1 */
  .portal-internal-shell .container{
    width:calc(100% - 48px)!important;
    max-width:1720px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* evita cartões principais excessivamente altos/largos visualmente */
  .portal-internal-shell .card-principal,
  .portal-internal-shell .card.border-0.shadow-sm{
    width:100%;
  }
}

/* em telas realmente largas, aproveita ainda mais o espaço sem colar nas bordas */
@media (min-width: 1800px){
  .portal-internal-shell .container{
    max-width:1760px!important;
  }
  body.portal-compacto .govbar .container,
  body.portal-compacto .topo-hero > .container,
  body.portal-compacto .megamenu .wrapper,
  body.portal-compacto .barras-data > .container,
  body.portal-compacto .footer > .container{
    max-width:1660px!important;
  }
}

/* notebook: mantém respiro lateral controlado */
@media (min-width: 992px) and (max-width: 1199.98px){
  .portal-internal-shell .container,
  body.portal-compacto .govbar .container,
  body.portal-compacto .topo-hero > .container,
  body.portal-compacto .megamenu .wrapper,
  body.portal-compacto .barras-data > .container,
  body.portal-compacto .footer > .container{
    width:calc(100% - 28px)!important;
  }
}

/* =====================================================================
   PORTAL PÚBLICO 2026 — V1.2
   Home fluida abaixo do slider
   Faz a página inicial aproveitar a mesma área útil das páginas internas.
   ===================================================================== */
@media (min-width: 992px){
  .portal-home-shell .container{
    width:calc(100% - 48px)!important;
    max-width:1720px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* seções de largura total mantêm o fundo até as bordas,
     mas o conteúdo interno acompanha a largura fluida da home */
  .portal-home-shell .quick-access-section > .container{
    width:calc(100% - 48px)!important;
    max-width:1720px!important;
  }
}

@media (min-width: 1800px){
  .portal-home-shell .container,
  .portal-home-shell .quick-access-section > .container{
    max-width:1760px!important;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px){
  .portal-home-shell .container,
  .portal-home-shell .quick-access-section > .container{
    width:calc(100% - 28px)!important;
  }
}
