/* Etapa 10.1 — Correções de apresentação. Sem banco de dados. */
:root{--sbfcp-gold:#f4ba35;--sbfcp-blue:#092f50}
/* Bootstrap aplica .collapse:not(.show){display:none}: o menu deve permanecer visível no desktop. */
@media(min-width:1101px){
 .postline-site-header .header-menu.collapse:not(.show){display:flex!important}
 .postline-site-header .main-header-inner{max-width:1500px;gap:16px}
 .postline-site-header .sbfcp-brand{min-width:260px}
 .postline-site-header .header-government{min-width:155px;max-width:180px;text-align:right}
 .postline-site-header .header-nav{gap:clamp(9px,1vw,17px)}
 .postline-site-header .header-nav a{font-size:clamp(10px,.78vw,12px)}
 .postline-site-header .header-search{min-width:125px;max-width:175px}
}
@media(min-width:1101px) and (max-width:1250px){
 .postline-site-header .header-government{min-width:125px;max-width:145px}
 .postline-site-header .sbfcp-brand{min-width:230px}
 .postline-site-header .sbfcp-brand strong{font-size:13px}
 .postline-site-header .header-search{min-width:110px;max-width:120px}
}
@media(max-width:1100px){
 .postline-site-header .header-menu.collapse:not(.show){display:none!important}
 .postline-site-header .header-menu.collapse.show{display:flex!important}
 .postline-site-header .postline-mobile-toggle{display:block!important}
 .postline-site-header .header-nav{padding:10px 0}
}
/* Imagem local demonstrativa já existente: não representa uma fotografia oficialmente validada. */
.sbfcp-hero{background-color:#0a3152!important;background-image:linear-gradient(90deg,rgba(4,37,65,.94) 0%,rgba(4,37,65,.80) 35%,rgba(4,37,65,.20) 78%,rgba(4,37,65,.38) 100%),url('../img/hero-library.jpg')!important;background-size:cover!important;background-position:center 38%!important}
.sbfcp-hero .hero-inner{min-height:440px!important}
.sbfcp-hero .hero-copy{position:relative;z-index:1}
.sbfcp-hero .hero-quote{position:relative;z-index:1}
/* Cartões: 7 unidades por faixa em telas grandes, sem miniaturas ilegíveis. */
.libraries .library-grid{gap:15px!important;padding:6px 3px 16px}
.libraries .library-card{flex:0 0 calc((100% - 90px)/7)!important;min-width:150px;border-radius:10px!important}
.libraries .library-card img{height:125px!important;object-fit:cover}
.libraries .library-info{padding:12px 12px 20px!important;min-height:88px!important}
.libraries .library-info strong{font-size:13px!important;line-height:1.3!important}
.libraries .library-info small{font-size:11px!important;line-height:1.4!important}
.libraries .library-info .arrow{width:23px;height:23px;font-size:13px;background:#eeb631;color:#062c4d;right:8px;bottom:8px}
.libraries .section-heading h2,.content-trio .section-heading h2,.location h2{color:#093658}
/* Mais respiro em notícias, eventos e quem somos */
.content-trio .news-body h3{font-size:19px!important}
.content-trio .news-body p{font-size:14px!important;line-height:1.55!important}
.content-trio .event-row strong{font-size:17px!important}
.content-trio .event-row small{font-size:12px!important}
.content-trio .about{background:linear-gradient(105deg,rgba(3,39,67,.96),rgba(8,69,111,.83)),url('../img/hero-library.jpg') center 40%/cover!important}
.content-trio .about p{max-width:820px!important}
/* Evita filtro branco que apagava o símbolo no rodapé. */
.sbfcp-footer .sbfcp-footer-logo img{filter:none!important;background:transparent!important;border-radius:12px}
.sbfcp-footer .sbfcp-footer-logo{gap:14px}
.sbfcp-footer .sbfcp-footer-logo strong{font-size:18px}
@media(max-width:1200px){.libraries .library-card{flex-basis:calc((100% - 60px)/5)!important}}
@media(max-width:850px){.libraries .library-card{flex-basis:calc((100% - 30px)/3)!important;min-width:160px}.sbfcp-hero .hero-inner{min-height:400px!important}}
@media(max-width:600px){.libraries .library-card{flex-basis:74%!important;min-width:200px}.libraries .library-card img{height:165px!important}.sbfcp-hero .hero-inner{min-height:420px!important}.sbfcp-hero{background-position:55% center!important}.content-trio .news-body h3{font-size:17px!important}.postline-site-header .header-government{font-size:10px}}

/* Banner institucional FCP — atualização pontual 2026-10-12 */
.sbfcp-hero{background-image:linear-gradient(90deg,rgba(4,37,65,.88) 0%,rgba(4,37,65,.72) 35%,rgba(4,37,65,.14) 78%,rgba(4,37,65,.28) 100%),url('../img/fcp-home-banner.jpg')!important;background-position:center 45%!important}

/* Harmonia tipografica do banner FCP — somente apresentacao */
.sbfcp-hero .hero-copy{width:min(780px,66%)!important;padding-block:52px!important}
.sbfcp-hero .sbfcp-kicker{font-family:Arial,Helvetica,sans-serif!important;font-size:12px!important;font-weight:750!important;letter-spacing:.19em!important;line-height:1.5!important;margin-bottom:16px!important;color:#ffc23f!important}
.sbfcp-hero .hero-copy h1{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(37px,3.5vw,59px)!important;font-weight:700!important;line-height:1.07!important;letter-spacing:-.028em!important;max-width:800px!important;margin:0 0 16px!important;text-wrap:balance}
.sbfcp-hero .hero-copy h1 span{display:inline!important;white-space:nowrap;font-size:.83em!important;font-weight:700!important;letter-spacing:-.035em!important}
.sbfcp-hero .hero-copy h2{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(22px,1.85vw,31px)!important;font-weight:500!important;line-height:1.25!important;letter-spacing:-.012em!important;max-width:730px!important;margin:0 0 14px!important;color:#ffbe35!important;text-wrap:balance}
.sbfcp-hero .hero-copy>p:not(.sbfcp-kicker){font-family:Arial,Helvetica,sans-serif!important;font-size:clamp(14px,.95vw,16px)!important;line-height:1.65!important;max-width:575px!important;margin:0 0 19px!important;color:#f8fbff!important}
.sbfcp-hero .hero-quote{font-family:Georgia,'Times New Roman',serif!important;font-size:clamp(21px,1.75vw,29px)!important;line-height:1.22!important;letter-spacing:-.012em!important;margin-right:28px!important;text-shadow:0 2px 8px rgba(0,0,0,.5)!important}
@media(max-width:1100px){.sbfcp-hero .hero-copy{width:min(720px,75%)!important}.sbfcp-hero .hero-copy h1{font-size:clamp(36px,4.5vw,52px)!important}}
@media(max-width:760px){.sbfcp-hero .hero-copy{width:100%!important;padding-block:42px!important}.sbfcp-hero .hero-copy h1{font-size:clamp(34px,8vw,48px)!important}.sbfcp-hero .hero-copy h1 span{font-size:.83em!important}.sbfcp-hero .hero-copy h2{font-size:clamp(21px,5vw,27px)!important}.sbfcp-hero .hero-quote{display:none!important}}
@media(max-width:390px){.sbfcp-hero .hero-copy h1{font-size:32px!important}.sbfcp-hero .sbfcp-kicker{font-size:10px!important}}

/* Refinamento final: sem sigla duplicada e título menor no banner */
.sbfcp-hero .hero-copy h1{font-size:clamp(32px,2.85vw,48px)!important;line-height:1.15!important;letter-spacing:-.018em!important;max-width:690px!important;margin-bottom:15px!important}
.sbfcp-hero .hero-copy{width:min(740px,66%)!important}
.sbfcp-hero .sbfcp-kicker{font-size:11px!important;letter-spacing:.15em!important;margin-bottom:12px!important}
@media(max-width:1100px){.sbfcp-hero .hero-copy h1{font-size:clamp(32px,3.8vw,44px)!important}}
@media(max-width:760px){.sbfcp-hero .hero-copy{width:100%!important}.sbfcp-hero .hero-copy h1{font-size:clamp(30px,6.6vw,40px)!important}}
@media(max-width:390px){.sbfcp-hero .hero-copy h1{font-size:29px!important}}


/* Home — grade compacta e harmoniosa: 14 bibliotecas sem carrossel */
#bibliotecas .carousel-shell{display:block!important;overflow:visible!important}
#bibliotecas .carousel-arrow{display:none!important}
#bibliotecas .library-grid{
 display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;
 gap:14px!important;width:100%!important;max-width:none!important;
 overflow:visible!important;scroll-snap-type:none!important;
 padding:10px 0 14px!important;transform:none!important;
}
#bibliotecas .library-card{
 display:flex!important;flex-direction:column!important;flex:none!important;
 width:100%!important;min-width:0!important;max-width:none!important;
 height:100%!important;overflow:hidden!important;border-radius:10px!important;
 box-shadow:0 3px 12px rgba(13,49,80,.09)!important;
 text-decoration:none!important;
}
#bibliotecas .library-card img{
 display:block!important;width:100%!important;height:96px!important;
 aspect-ratio:auto!important;object-fit:cover!important;
}
#bibliotecas .library-info{
 display:flex!important;flex-direction:column!important;justify-content:center!important;
 min-height:61px!important;padding:9px 30px 11px 11px!important;
}
#bibliotecas .library-info strong{
 font-size:12px!important;line-height:1.3!important;letter-spacing:-.01em!important;
 overflow-wrap:anywhere;
}
#bibliotecas .library-info small{font-size:11px!important;line-height:1.3!important;margin-top:4px!important}
#bibliotecas .library-info .arrow{right:8px!important;bottom:9px!important;transform:scale(.85)}
@media(max-width:1300px){
 #bibliotecas .library-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
 #bibliotecas .library-card img{height:112px!important}
}
@media(max-width:950px){
 #bibliotecas .library-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:13px!important}
 #bibliotecas .library-card img{height:135px!important}
}
@media(max-width:620px){
 #bibliotecas .library-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 #bibliotecas .library-card img{height:120px!important}
 #bibliotecas .library-info{min-height:66px!important}
}
@media(max-width:360px){
 #bibliotecas .library-grid{grid-template-columns:1fr!important}
 #bibliotecas .library-card img{height:160px!important}
}

/* Ajuste fino 2026-10-12: cards discretamente maiores e grade equilibrada. */
@media(min-width:1301px){
 #bibliotecas .library-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:17px!important}
 #bibliotecas .library-card img{height:132px!important}
 #bibliotecas .library-info{min-height:73px!important;padding:11px 34px 13px 13px!important}
 #bibliotecas .library-info strong{font-size:13px!important}
 #bibliotecas .library-info small{font-size:11.5px!important}
}
@media(min-width:951px) and (max-width:1300px){
 #bibliotecas .library-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:15px!important}
 #bibliotecas .library-card img{height:128px!important}
}
