/* R3K — rodada aprovada em 30/09/2026 */
.sitebar {
  height: 88px;
  background: rgba(255,255,255,.97);
  color: var(--blue);
  border-bottom: 1px solid rgba(34,51,105,.12);
  box-shadow: 0 8px 30px rgba(16,27,56,.06);
  position: relative;
  z-index: 40;
}
.sitebar .logo img { width: 128px; height: 67px; object-fit: contain; }
.sitebar-nav { display: flex; align-items: center; gap: clamp(18px,2.3vw,38px); }
.sitebar-nav a { color: var(--blue); text-decoration: none; font-size: .73rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.sitebar-nav a:hover,.sitebar-nav a:focus-visible { color: #987637; }
.sitebar>a:last-child { color: var(--blue); border-color: var(--gold); font-weight: 800; }
.sitebar a:focus-visible,.chapter-nav a:focus-visible,.teaser-grid a:focus-visible { outline: 3px solid #d4b46e; outline-offset: 4px; }

#historia .prose { columns: 1 !important; max-width: 980px; }
.story-v21 .dialogue { position: relative; display: grid; gap: 14px; margin: 38px 0 24px; padding-left: 32px; }
.story-v21 .dialogue::before { content:""; position:absolute; left: 8px; top: 8px; bottom: 8px; width: 2px; background: linear-gradient(var(--gold),rgba(196,163,101,.18)); }
.story-v21 .speech { position: relative; max-width: 760px; padding: 18px 22px; border: 1px solid rgba(34,51,105,.14); background: #fff; box-shadow: 0 12px 34px rgba(16,27,56,.055); }
.story-v21 .speech::before { content:""; position:absolute; left:-30px; top:24px; width:10px; height:10px; border-radius:50%; background:var(--gold); box-shadow:0 0 0 6px #f5efe4; }
.story-v21 .speech.ricardo { margin-left: clamp(20px,7vw,100px); background: #f1f3f8; border-color: rgba(34,51,105,.22); }
.story-v21 .speech span { display:block; margin-bottom:7px; color:#987637; font-size:.68rem; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
.story-v21 .speech p { margin:0; font-size:1.03rem; }
.story-v21 .ricardo-label { margin: 34px 0 10px; color:var(--blue); font-size:.74rem; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.story-v21 .story-climax { margin:0 0 26px !important; }
.story-v21 .closing { margin: 0 0 28px 32px; background:#fffaf0; }

.teaser-grid > a { display:flex; flex-direction:column; min-height:170px; padding:26px 28px; color:inherit; text-decoration:none; border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.055); transition:transform .25s,background .25s,border-color .25s; }
.teaser-grid > a:hover,.teaser-grid > a:focus-visible { transform:translateY(-5px); background:rgba(255,255,255,.1); border-color:var(--gold); }
.teaser-grid > a strong { font-size:clamp(1.55rem,2.6vw,3rem); line-height:1; }
.teaser-grid > a span { margin-top:10px; }
.teaser-grid > a em { margin-top:auto; padding-top:18px; color:var(--gold); font-size:.68rem; font-style:normal; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }

.alta-renda-v21 { background:#0d1a35 !important; color:#fff; }
.alta-renda-v21 .section-shell { max-width:none; padding-left:7vw; padding-right:0; }
.alta-renda-v21 .section-layout { grid-template-columns:minmax(360px,.8fr) minmax(520px,1.2fr); gap:70px; }
.alta-renda-v21 .visual { min-height:650px; margin:0; }
.alta-renda-v21 .visual img { object-position:center; }
.alta-renda-v21 .section-head h2 { color:#f1dfba; }
.alta-renda-v21 .prose { padding-bottom:40px; }
.alta-renda-v21 .cta { color:#f1dfba; }

.servicos-v21 .section-layout { grid-template-columns:minmax(360px,.82fr) minmax(520px,1.18fr) !important; gap:80px; align-items:start; }
.service-categories { display:flex; flex-wrap:wrap; gap:8px; margin:28px 0; }
.service-categories span { padding:9px 12px; border:1px solid rgba(34,51,105,.18); background:rgba(255,255,255,.62); color:var(--blue); font-size:.78rem; font-weight:800; }
.services-gallery { display:grid; grid-template-columns:1.08fr .92fr; grid-template-rows:1fr 1fr; min-height:650px; gap:14px; align-self:stretch; }
.services-gallery figure,.dual-gallery figure { position:relative; margin:0; overflow:hidden; background:#101b38; }
.services-gallery figure:first-child { grid-row:1/3; transform:translateY(28px); }
.services-gallery figure:nth-child(2) { transform:translateX(-22px); }
.services-gallery figure:nth-child(3) { transform:translateX(12px); }
.services-gallery img,.dual-gallery img { width:100%; height:100%; object-fit:cover; transition:transform .55s,filter .55s; }
.services-gallery figure:hover img,.services-gallery figure:focus-within img,.dual-gallery figure:hover img { transform:scale(1.045); filter:saturate(1.05); }
.services-gallery figcaption,.dual-gallery figcaption { position:absolute; left:14px; bottom:14px; padding:8px 11px; background:rgba(12,24,51,.9); color:#fff; font-size:.66rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }

.equipamentos-v21 .section-layout,.condominios-v21 .section-layout { grid-template-columns:minmax(360px,.88fr) minmax(500px,1.12fr) !important; gap:70px; align-items:start; }
.dual-gallery { display:grid; grid-template-columns:1fr 1fr; min-height:600px; gap:14px; }
.dual-gallery figure:first-child { margin-top:46px; }
.dual-gallery figure:last-child { margin-bottom:46px; }

#agro .visual img { object-position:center; }
.transferencia-v21 { background:linear-gradient(135deg,#fff 0%,#f5efe5 100%) !important; }
.transferencia-v21 .prose { columns:1 !important; max-width:980px !important; }
.transferencia-v21 .transfer-lead { max-width:880px; font:750 clamp(1.45rem,2.7vw,2.65rem)/1.24 Manrope,Arial,sans-serif; color:var(--blue); }
.transferencia-v21 .transfer-close { margin-top:36px !important; font:800 clamp(1.8rem,3.5vw,3.5rem)/1.08 Manrope,Arial,sans-serif; color:var(--blue); }
.transferencia-v21 .cta { background:var(--blue); color:#fff; border:0; padding:18px 22px; }

.consortium-partners article:has(img[alt*="MAPFRE"])::after,
.consortium-partners article:has(img[alt*="Porto Bank"])::after { display:block; margin-top:5px; color:#dbc89f; font-size:.6rem; font-weight:800; letter-spacing:.1em; text-align:center; }
.consortium-partners article:has(img[alt*="MAPFRE"])::after { content:"CONSÓRCIOS"; }
.consortium-partners article:has(img[alt*="Porto Bank"])::after { content:"PORTO BANK"; }

@media(max-width:1000px){
  .sitebar-nav { gap:14px; }
  .sitebar-nav a { font-size:.64rem; }
  .alta-renda-v21 .section-layout,.servicos-v21 .section-layout,.equipamentos-v21 .section-layout,.condominios-v21 .section-layout { grid-template-columns:1fr !important; }
  .alta-renda-v21 .section-shell { padding-right:7vw; }
  .alta-renda-v21 .visual { min-height:480px; }
  .services-gallery { min-height:560px; }
}

@media(max-width:800px){
  .sitebar { height:72px; padding:0 18px; }
  .sitebar .logo img { width:105px; height:55px; }
  .sitebar-nav { display:none; }
  .sitebar>a:last-child { padding:10px 12px; font-size:.59rem; }
  .story-v21 .dialogue { padding-left:24px; }
  .story-v21 .speech.ricardo { margin-left:10px; }
  .story-v21 .closing { margin-left:0; }
  .teaser-grid > a { min-height:145px; }
  .alta-renda-v21 .section-shell { padding:70px 22px; }
  .alta-renda-v21 .visual { min-height:0; aspect-ratio:4/3; order:-1; }
  .services-gallery { min-height:0; grid-template-columns:1fr 1fr; grid-template-rows:280px 220px; gap:9px; }
  .services-gallery figure:first-child { grid-column:1/3; grid-row:auto; transform:none; }
  .services-gallery figure:nth-child(2),.services-gallery figure:nth-child(3) { transform:none; }
  .dual-gallery { min-height:0; grid-template-columns:1fr; grid-template-rows:280px 280px; gap:9px; width:100%; }
  .dual-gallery figure:first-child,.dual-gallery figure:last-child { margin:0; }
  .equipamentos-v21 .dual-gallery,.condominios-v21 .dual-gallery { order:-1; }
}

/* Correção final: mantém a navegação Explore rolável sem ampliar a página. */
html,body { max-width:100%; overflow-x:hidden; }
.chapter-nav { width:100%; max-width:100vw; box-sizing:border-box; }

/* Logos específicas das verticais de consórcio. */
.consortium-partners article:has(img[alt*='MAPFRE'])::after,.consortium-partners article:has(img[alt*='Porto Bank'])::after{display:none!important;content:none!important}
.consortium-partners img[src*='mapfre-consorcios'],.consortium-partners img[src*='portobank-consorcios']{width:min(230px,88%);height:auto;max-height:none}
