/* R3K Consórcios V1.3 — refinamentos Big Master, somente staging */

/*
 * Correção estrutural V1.3.1
 * A folha-base usa um seletor com vários :not(#id), de especificidade muito
 * alta, para aplicar uma textura diagonal às seções. Esse seletor anulava as
 * imagens de fundo definidas nesta folha e deixava texto branco sobre fundo
 * transparente em Contemplação e Multimarcas. As declarações abaixo mantêm a
 * composição aprovada e neutralizam somente esse conflito de cascata.
 * Também desativamos o scroll suave global: em uma página longa ele mantinha
 * a navegação entre âncoras em trânsito por vários segundos.
 */
html { scroll-behavior: auto; }

/* Perfis: leitura editorial mais clara sem alterar a narrativa aprovada. */
#perfis {
  background-color: #f3ecde;
  background-image: radial-gradient(circle at 92% 12%, rgba(203,169,91,.14), transparent 28%), linear-gradient(135deg, #fbfaf7 0%, #f3ecde 100%) !important;
}
#perfis .section-shell { position: relative; }
#perfis .section-shell::after {
  content: ""; position: absolute; right: 0; top: 34px; width: 210px; height: 210px;
  border: 1px solid rgba(24,42,87,.09); border-radius: 50%;
  box-shadow: 0 0 0 44px rgba(24,42,87,.025), 0 0 0 88px rgba(195,164,92,.025); pointer-events: none;
}
#perfis .profile-composition { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 9px; margin: 0 0 38px; }
#perfis .profile-composition span {
  display: grid; place-items: center; min-height: 84px; padding: 16px 10px;
  border: 1px solid rgba(24,42,87,.11); background: rgba(255,255,255,.72); color: #182a57;
  font-size: .67rem; font-weight: 800; letter-spacing: .1em; text-align: center;
  box-shadow: 0 13px 30px rgba(19,35,70,.055);
}

/* Alta renda e investidores: dois universos próprios, conectados pela mesma linguagem. */
#alta-renda {
  color: #fff;
  background: radial-gradient(circle at 84% 18%, rgba(218,190,119,.2), transparent 28%), linear-gradient(135deg,#101d3a 0%,#223c72 100%);
}
#alta-renda .section-head h2, #alta-renda .prose strong { color: #fff; }
#alta-renda .prose p { color: rgba(255,255,255,.8); }
#alta-renda .kicker { color: #e2ca8d; }
#alta-renda .cta.contextual { border-color: #dcc27e; background: #dcc27e; color: #142447; }
#investidores {
  background: linear-gradient(90deg, rgba(178,137,52,.08) 1px, transparent 1px), linear-gradient(#f8f3e9 0%,#fff 100%);
  background-size: 96px 100%,100% 100%;
}
#investidores .prose { position: relative; padding-left: clamp(24px,4vw,58px); border-left: 3px solid #b48c38; }
#investidores .prose::before {
  content: "PATRIMÔNIO"; display: block; margin-bottom: 26px; color: #a27d2c;
  font-size: .7rem; font-weight: 800; letter-spacing: .22em;
}

/* Serviços: transforma a enumeração em repertório escaneável. */
#servicos { background: #f8f4ec; }
#servicos .visual { box-shadow: 18px 22px 0 rgba(24,42,87,.08); }
#servicos .prose p:has(> strong:only-child) {
  display: inline-flex; width: calc(50% - 8px); min-height: 58px; margin: 5px 4px; padding: 15px 17px;
  align-items: center; border: 1px solid rgba(24,42,87,.11); background: rgba(255,255,255,.72); color: #182a57;
}

/* Contemplação e cartas contempladas: hierarquia e segurança. */
#contemplacao {
  background-color: #101d39;
  background-image: radial-gradient(circle at 10% 18%, rgba(218,190,119,.12), transparent 24%), linear-gradient(135deg,#101d39,#1d3566) !important;
}
#contemplacao .section-head h2, #contemplacao .prose strong { color: #fff; }
#contemplacao .prose p { color: rgba(255,255,255,.8); }
#contemplacao .kicker { color: #e0c681; }
#contemplacao .lance-map { border-color: rgba(229,205,143,.3); background: rgba(255,255,255,.045); }
#cartas-contempladas {
  background-color: #f1e8d7;
  background-image: linear-gradient(135deg,#fbfaf7,#f1e8d7) !important;
}
#cartas-contempladas .prose {
  max-width: 930px; padding: clamp(30px,4vw,52px); border: 1px solid rgba(24,42,87,.12);
  border-top: 4px solid #b38a35; background: rgba(255,255,255,.82); box-shadow: 0 22px 60px rgba(20,35,72,.08);
}
#cartas-contempladas .prose p:nth-last-child(2) {
  padding: 17px 19px; border-left: 3px solid #b38a35; background: #f7f0e3; color: #182a57;
}

/* Possibilidades: mapa amplo com acabamento mais autoral. */
#possibilidades { overflow: hidden; background: #fff; }
#possibilidades .word-cloud {
  position: relative; padding: clamp(34px,5vw,68px); border: 1px solid rgba(24,42,87,.1);
  background: radial-gradient(circle at 82% 20%, rgba(195,164,92,.14), transparent 28%), linear-gradient(145deg,#fbfaf7,#f1eadc);
  box-shadow: 0 24px 70px rgba(20,35,72,.07);
}

/* FAQ: leitura em duas colunas no desktop, uma coluna no mobile. */
#mitos {
  background-color: #f8f3e9;
  background-image: linear-gradient(145deg,#f8f3e9,#fff) !important;
}
#mitos .prose { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; max-width: none; }
#mitos details {
  margin: 0; padding: 0 22px; border: 1px solid rgba(24,42,87,.11); background: rgba(255,255,255,.84);
  box-shadow: 0 12px 32px rgba(20,35,72,.045);
}
#mitos details[open] { border-color: rgba(179,138,53,.42); box-shadow: 0 18px 44px rgba(20,35,72,.08); }
#mitos summary { color: #182a57; }

/* Multimarcas: prova institucional real com marcas oficiais. */
#multimarcas {
  background-color: #0d1931;
  background-image: radial-gradient(circle at 86% 20%, rgba(218,190,119,.14), transparent 30%), linear-gradient(135deg,#0d1931 0%,#20396d 100%) !important;
}
#multimarcas .consortium-partners {
  column-span: all;
  break-inside: avoid;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  margin: 42px 0;
}
#multimarcas .consortium-partners article {
  position: relative; display: grid; place-items: center; min-height: 112px; padding: 22px; overflow: hidden;
  border: 1px solid rgba(255,255,255,.13); background: rgba(255,255,255,.96); box-shadow: 0 12px 28px rgba(3,10,25,.16);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
#multimarcas .consortium-partners article::after {
  content: ""; position: absolute; left: 20px; right: 20px; bottom: 0; height: 2px;
  background: linear-gradient(90deg,transparent,#bd9440,transparent); opacity: 0; transition: opacity .28s ease;
}
#multimarcas .consortium-partners img { width: auto; max-width: 160px; max-height: 53px; object-fit: contain; }
#multimarcas .consortium-partners .square img { max-width: 62px; max-height: 62px; }
@media (hover:hover) {
  #multimarcas .consortium-partners article:hover {
    transform: translateY(-4px) scale(1.025); border-color: rgba(218,190,119,.55); box-shadow: 0 20px 42px rgba(3,10,25,.24);
  }
  #multimarcas .consortium-partners article:hover::after { opacity: 1; }
}

/* Ricardo: microajuste seguro; a fotografia definitiva segue pendente. */
#ricardo-david .prose { max-width: 880px; }
#ricardo-david .prose > p:first-child {
  color: #a9802f; font-size: .76rem; font-weight: 800; letter-spacing: .15em; text-transform: uppercase;
}

@media(max-width:800px) {
  #perfis .section-shell::after { display:none; }
  #perfis .profile-composition { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #perfis .profile-composition span:last-child { grid-column: 1/-1; }
  #investidores .prose { padding-left: 20px; }
  #servicos .prose p:has(> strong:only-child) { width: 100%; margin-inline: 0; }
  #mitos .prose { grid-template-columns: 1fr; }
  #multimarcas .consortium-partners { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  #multimarcas .consortium-partners article { min-height: 94px; padding: 17px; }
  #multimarcas .consortium-partners img { max-width: 125px; max-height: 45px; }
}
@media(prefers-reduced-motion:reduce) { #multimarcas .consortium-partners article { transition:none; } }

/* V1.4 — consolidação estrutural final do Big Master, somente staging. */
html { scroll-padding-top: 76px; }
body { overflow-x: hidden; }
.section { min-height: 0; }
.section[id] { scroll-margin-top: 76px; }
.section-shell { padding-top: clamp(76px,7vw,106px); padding-bottom: clamp(76px,7vw,106px); }
.section-head { max-width: 980px; }
.section h2 { overflow-wrap: normal; word-break: normal; text-wrap: balance; }
.section .prose { min-width: 0; }

/* Primeira dobra: leitura contínua e marca registrada proporcional. */
.hero { min-height: min(750px, calc(100vh - 86px)); }
.hero-inner { width: min(820px,72vw); padding-top: clamp(70px,8vh,96px); padding-bottom: 112px; }
.hero h1 { max-width: 760px; font-size: clamp(3.2rem,5.8vw,6.1rem); line-height: .94; text-wrap: balance; }
.hero-copy { max-width: 610px; }
.hero-actions a { min-height: 52px; }
.chapter-nav { scroll-padding-inline: 5vw; }

/* Colunas editoriais: conteúdo permanece no fluxo, sem cortes ou sobreposição. */
#origem .prose, #historia .prose, #perfis .prose, #liquidez .prose,
#alta-renda .prose, #investidores .prose, #transferencia .prose,
#consorcio-ou-financiamento .prose, #cartas-contempladas .prose,
#resultados .prose, #ricardo-passarin .prose, #eliane .prose,
#por-que-cases .prose, #multimarcas .prose {
  column-fill: balance;
  orphans: 3;
  widows: 3;
}

/* Perfis e método: estruturas previsíveis e alinhadas. */
#perfis .profile-composition { break-inside: avoid; }
#estrategia .method-journey { align-items: stretch; }
#estrategia .method-step { min-width: 0; height: 100%; }
#estrategia .method-outro { max-width: none; margin-top: 44px; }

/* Seções com imagem: mídia e texto com proporção consistente. */
.section.has-image:not(#ouro):not(#agro) .section-layout { align-items: start; }
.section.has-image:not(#ouro):not(#agro) .visual { width: 100%; min-width: 0; min-height: 0; aspect-ratio: 16 / 11; }
.section.has-image:not(#ouro):not(#agro) .visual img { min-width: 0; }
.section.has-image:not(#ouro):not(#agro) .prose { align-self: center; }

/* Alta renda e investidores: contraste sempre legível. */
#alta-renda { background-image: radial-gradient(circle at 84% 18%,rgba(218,190,119,.2),transparent 28%),linear-gradient(135deg,#101d3a,#223c72) !important; }
#investidores { color: #182441; }
#investidores .section-head h2, #investidores .prose strong { color: #182441; }
#investidores .prose p { color: #34415c; }

/* Ouro e Agro: composição imersiva preservada, sem alturas fixas ou texto cortado. */
#ouro .section-shell, #agro .section-shell {
  display: block; max-width: 1440px; min-height: 0; padding: clamp(82px,7vw,112px) 7vw;
}
#ouro .section-head, #agro .section-head { position: relative; inset: auto; z-index: 2; max-width: 840px; }
#ouro .section-layout, #agro .section-layout {
  display: grid; grid-template-columns: minmax(0,1fr) minmax(360px,.92fr); gap: clamp(36px,5vw,74px);
  align-items: center; width: 100%; height: auto; min-height: 0;
}
#ouro .visual, #agro .visual { position: relative; inset: auto; height: auto; min-height: 460px; aspect-ratio: 4 / 5; grid-column: 2; grid-row: 1; }
#ouro .visual::after, #agro .visual::after { background: linear-gradient(90deg,rgba(11,20,38,.28),transparent 48%); }
#ouro .prose, #agro .prose { position: relative; z-index: 2; grid-column: 1; grid-row: 1; max-width: 690px; padding: 0; }
#ouro { background-image: linear-gradient(135deg,#0b1426,#182c52) !important; }
#agro { background-image: linear-gradient(135deg,#0d1c35,#1b3557) !important; }

/* Serviços, saúde e condomínios: densidade controlada sem omitir conteúdo. */
#servicos .section-layout, #equipamentos-medicos .section-layout, #condominios .section-layout { gap: clamp(38px,5vw,72px); }
#servicos .prose p:has(> strong:only-child) { min-height: 0; }
#servicos .visual, #equipamentos-medicos .visual, #condominios .visual { align-self: center; }

/* Contemplação: seis caminhos legíveis e fechamento dentro do fluxo. */
#contemplacao { color: #fff; }
#contemplacao .section-shell { overflow: visible; }
#contemplacao .prose { columns: 2; column-gap: 64px; max-width: none; }
#contemplacao .lance-map { column-span: all; break-inside: avoid; margin-bottom: 50px; }
#contemplacao .lance-options span { min-width: 0; }
#contemplacao .prose p:last-child { column-span: all; color: #fff; break-inside: avoid; }
#contemplacao .diagram-line { color: #e6d09d; }

/* Transferência, comparação e cartas: blocos completos, sem frases órfãs. */
#transferencia .transfer-route, #consorcio-ou-financiamento .choice-stage { column-span: all; break-inside: avoid; }
#cartas-contempladas .prose { columns: 1; }
#cartas-contempladas .prose p { max-width: 820px; }
#cartas-contempladas .cta-wrap { break-inside: avoid; }

/* Possibilidades: repertório em grade editorial estável. */
#possibilidades .word-cloud {
  display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px;
  padding: clamp(24px,3vw,42px); border: 1px solid rgba(24,42,87,.1); border-top: 3px solid #b38a35;
}
#possibilidades .word-cloud span,
#possibilidades .word-cloud .w1,
#possibilidades .word-cloud .w2,
#possibilidades .word-cloud span:nth-child(4n+1),
#possibilidades .word-cloud span:nth-child(5n+2) {
  display: flex; align-items: center; min-height: 72px; padding: 14px 16px;
  border: 1px solid rgba(24,42,87,.09); background: rgba(255,255,255,.76);
  color: #182a57; font-size: clamp(.88rem,1.15vw,1.08rem); line-height: 1.35; letter-spacing: -.015em;
}

/* Provas: módulos pendentes saem da apresentação; fatos e ressalvas permanecem. */
.media-placeholder, .photo-placeholder, .logo-placeholder { display: none !important; }
#ricardo-passarin .prose, #eliane .prose { column-gap: 60px; }
.testimonials-grid { align-items: stretch; }
.testimonials-grid .section { min-height: 100%; }
.testimonials-grid .section-shell { height: 100%; }

/* FAQ, parceiros e fundador. */
#mitos .prose { max-width: none; }
#mitos details { min-width: 0; }
#multimarcas .prose { columns: 1; }
#multimarcas .independence { margin-bottom: 34px; }
#multimarcas .consortium-partners { margin: 34px 0; grid-template-columns: repeat(3,minmax(0,1fr)); }
#ricardo-david .section-layout { grid-template-columns: minmax(0,1.12fr) minmax(300px,.62fr); gap: clamp(42px,6vw,82px); align-items: center; }
#ricardo-david .section-layout::after { content: none; display: none; }
#ricardo-david .founder-photo { margin: 0; overflow: hidden; aspect-ratio: 4 / 5; box-shadow: 16px 16px 0 #c3a46a; }
#ricardo-david .founder-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }

/* Fechamento e rodapé: CTA aparece antes e a informação institucional respira. */
#contato .section-shell { padding-top: clamp(86px,8vw,120px); padding-bottom: clamp(92px,8vw,128px); }
#contato h2 { max-width: 1120px; font-size: clamp(2.5rem,4.6vw,5.35rem); }
#contato .prose { columns: 3; column-gap: 36px; max-width: 960px; }
#contato .cta-wrap { column-span: all; }
footer { min-height: 116px; line-height: 1.55; }

@media (max-width: 980px) {
  #ouro .section-layout, #agro .section-layout { grid-template-columns: 1fr; }
  #ouro .visual, #agro .visual { grid-column: 1; grid-row: 1; min-height: 360px; aspect-ratio: 16 / 10; opacity: .48; }
  #ouro .prose, #agro .prose { grid-column: 1; grid-row: 1; padding: 32px; }
  #possibilidades .word-cloud { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #ricardo-david .section-layout { grid-template-columns: 1fr .7fr; }
  #contato .prose { columns: 2; }
}

@media (max-width: 800px) {
  .section[id] { scroll-margin-top: 60px; }
  .hero { min-height: auto; }
  .hero-inner { width: 100%; padding-top: 74px; padding-bottom: 104px; }
  .hero h1 { font-size: clamp(2.65rem,11vw,4.25rem); }
  #contemplacao .prose, #cartas-contempladas .prose, #multimarcas .prose { columns: 1; }
  #possibilidades .word-cloud { grid-template-columns: 1fr 1fr; padding: 18px; }
  #possibilidades .word-cloud span,
  #possibilidades .word-cloud .w1,
  #possibilidades .word-cloud .w2,
  #possibilidades .word-cloud span:nth-child(4n+1),
  #possibilidades .word-cloud span:nth-child(5n+2) { min-height: 62px; padding: 11px; font-size: .82rem; }
  #ricardo-david .section-layout { display: flex; flex-direction: column; }
  #ricardo-david .founder-photo { width: min(100%,430px); order: -1; }
  #contato .prose { columns: 1; }
  #multimarcas .consortium-partners { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

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