/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&family=Inter:wght@400;500;600;700&display=swap');
@import url(menu.css);

:root{
  --verde-escuro:#25321f;
  --verde-medio:#3a4c30;
  --verde-claro:#4f6640;
  --bege:#f6f1e6;
  --bege-escuro:#ece4d3;
  --dourado:#c9a227;
  --dourado-claro:#e0bd4f;
  --texto-escuro:#232a1f;
  --texto-claro:#f6f1e6;
  --radius:2px;
}

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family:'Inter', sans-serif;
}

html{ scroll-behavior:smooth; }

body{
  background:var(--bege);
  color:var(--texto-escuro);
  line-height:1.6;
}

em{
  font-family:'Playfair Display', serif;
  font-style:italic;
  font-weight:600;
  color:var(--dourado);
}

h1,h2,h3,h4{
  font-family:'Playfair Display', serif;
  font-weight:700;
  color:var(--texto-escuro);
  line-height:1.25;
}

.container{
  width:90%;
  max-width:1180px;
  margin:auto;
}

section{
  padding:70px 0;
}

/* ---------- BOTOES ---------- */
.btn{
  display:inline-block;
  padding:14px 30px;
  border-radius:var(--radius);
  font-weight:600;
  font-size:15px;
  text-decoration:none;
  transition:all .2s ease;
  border:1px solid transparent;
}
.btn-dourado{
  background:var(--dourado);
  color:var(--verde-escuro);
}
.btn-dourado:hover{
  background:var(--dourado-claro);
}
.btn-outline{
  border-color:var(--texto-claro);
  color:var(--texto-claro);
}
.btn-outline:hover{
  background:rgba(246,241,230,.12);
}

/* ---------- EYEBROW / TITULOS DE SECAO ---------- */
.eyebrow{
  text-transform:uppercase;
  letter-spacing:2px;
  font-size:12px;
  font-weight:600;
  color:var(--dourado);
  margin-bottom:10px;
}
.eyebrow-centro{ text-align:center; }
.eyebrow-claro{ color:var(--dourado-claro); }

.titulo-secao{
  font-size:34px;
  text-align:center;
  max-width:680px;
  margin:0 auto 14px;
}
.titulo-claro{ color:var(--texto-claro); }

.subtitulo-secao{
  text-align:center;
  max-width:560px;
  margin:0 auto 40px;
  color:#5b6353;
}

/* ---------- HERO ---------- */
.hero{
  position:relative;
  overflow:hidden;
  min-height:640px;
  display:flex;
  align-items:center;
  padding:140px 0 90px;
  background:var(--verde-escuro);
}
.hero-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
}
.hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg, rgba(37,50,31,.75) 0%, rgba(37,50,31,.55) 55%, rgba(37,50,31,.85) 100%);
}
.hero-conteudo{
  position:relative;
  z-index:2;
  width:90%;
  max-width:700px;
  margin:0 auto;
  text-align:center;
  color:var(--texto-claro);
}
.hero .eyebrow{ color:var(--dourado-claro); }
.hero h1{
  font-size:46px;
  color:var(--texto-claro);
  margin-bottom:18px;
}
.hero-sub{
  font-size:17px;
  color:#e6e2d3;
  margin-bottom:34px;
}
.hero-cta{
  display:flex;
  gap:16px;
  justify-content:center;
  flex-wrap:wrap;
}

/* ---------- CATEGORIAS DE IMOVEIS ---------- */
.categorias{ background:#fff; padding:70px 0; }

.categorias-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:20px;
  margin-top:40px;
}

.categoria-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  text-align:center;
  background:var(--bege);
  border:1px solid var(--bege-escuro);
  border-radius:var(--radius);
  padding:30px 16px;
  text-decoration:none;
  color:var(--texto-escuro);
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.categoria-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 28px rgba(37,50,31,.12);
  background:#fff;
}
.categoria-icone{
  width:44px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--dourado);
}
.categoria-icone svg{ width:100%; height:100%; }
.categoria-nome{
  font-weight:600;
  font-size:15px;
}

/* ---------- HUB DE NEGOCIOS ---------- */
.hub{ background:var(--bege); }

.hub-bloco{ margin-bottom:50px; }
.hub-bloco:last-child{ margin-bottom:0; }

.hub-bloco-titulo{
  font-size:20px;
  color:var(--verde-escuro);
  border-bottom:2px solid var(--dourado);
  display:inline-block;
  padding-bottom:8px;
  margin-bottom:26px;
}

.hub-grid{
  display:grid;
  gap:22px;
}
.hub-grid-2{ grid-template-columns:repeat(2, 1fr); }
.hub-grid-3{ grid-template-columns:repeat(3, 1fr); }

.hub-card{
  background:#fff;
  border:1px solid var(--bege-escuro);
  border-radius:var(--radius);
  padding:28px 24px;
  transition:transform .2s ease, box-shadow .2s ease;
}
.hub-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 28px rgba(37,50,31,.12);
}
.hub-icone{
  width:42px;
  height:42px;
  color:var(--dourado);
  margin-bottom:16px;
}
.hub-icone svg{ width:100%; height:100%; }
.hub-card h4{
  font-size:17px;
  margin-bottom:8px;
}
.hub-card p{
  font-size:14px;
  color:#5b6353;
}

/* ---------- DIFERENCIAIS ---------- */
.diferenciais{
  background:var(--verde-escuro);
  color:var(--texto-claro);
}
.diferenciais-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:26px;
  margin-top:40px;
}
.diferencial-item{
  border-left:2px solid var(--dourado);
  padding-left:18px;
}
.diferencial-numero{
  font-family:'Playfair Display', serif;
  font-size:22px;
  color:var(--dourado);
  display:block;
  margin-bottom:8px;
}
.diferencial-item h4{
  color:var(--texto-claro);
  font-size:16px;
  margin-bottom:8px;
}
.diferencial-item p{
  font-size:13px;
  color:#cbd1c2;
}

/* ---------- EQUIPE ---------- */
.equipe-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:26px;
  margin-top:40px;
}
.equipe-card{
  background:#fff;
  border:1px solid var(--bege-escuro);
  border-radius:var(--radius);
  padding:26px;
  text-align:center;
}
.equipe-foto{
  width:96px;
  height:96px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--verde-medio), var(--verde-claro));
  margin:0 auto 16px;
}
.equipe-card h4{ font-size:17px; margin-bottom:4px; }
.equipe-cargo{
  display:block;
  font-size:12px;
  color:var(--dourado);
  text-transform:uppercase;
  letter-spacing:1px;
  margin-bottom:12px;
}
.equipe-card p{
  font-size:13px;
  color:#5b6353;
}

/* ---------- CTA FINAL ---------- */
.cta-final{
  background:var(--verde-escuro);
  background-image:linear-gradient(180deg, var(--verde-escuro), #1c2617);
}
.cta-final-conteudo{
  text-align:center;
  color:var(--texto-claro);
  max-width:600px;
}
.cta-final-conteudo h2{
  color:var(--texto-claro);
  font-size:30px;
  margin-bottom:14px;
}
.cta-final-conteudo p{
  color:#cbd1c2;
  margin-bottom:28px;
}

/* ---------- WHATSAPP FLUTUANTE ---------- */
.whats-flutuante{
  position:fixed;
  right:24px;
  bottom:24px;
  width:56px;
  height:56px;
  background:#25d366;
  color:#fff;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 20px rgba(0,0,0,.25);
  z-index:999;
}

/* ---------- RODAPE ---------- */
.rodape{
  background:#1c2617;
  color:#cbd1c2;
  padding:60px 0 0;
}
.container-rodape{
  width:90%;
  max-width:1180px;
  margin:0 auto;
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:40px;
  padding-bottom:40px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.rodape-marca p{
  margin-top:14px;
  font-size:13px;
  max-width:320px;
}
.rodape-col h4{
  color:var(--texto-claro);
  font-size:15px;
  margin-bottom:14px;
}
.rodape-col ul{ list-style:none; }
.rodape-col li{ margin-bottom:10px; font-size:13px; }
.rodape-col a{ color:#cbd1c2; text-decoration:none; }
.rodape-col a:hover{ color:var(--dourado); }
.rodape-copy{
  text-align:center;
  font-size:12px;
  padding:22px 0;
  color:#8b9280;
}
.rodape-intranet a{
  color:#8b9280;
  text-decoration:underline;
}
.rodape-intranet a:hover{
  color:var(--dourado);
}

/* ---------- GALERIA DE IMOVEIS (por categoria) ---------- */
.pagina-imoveis{ padding:60px 0 90px; }

.imoveis-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
  margin-top:40px;
}

.imovel-card{
  display:block;
  background:#fff;
  border:1px solid var(--bege-escuro);
  border-radius:var(--radius);
  overflow:hidden;
  text-decoration:none;
  color:var(--texto-escuro);
  transition:transform .2s ease, box-shadow .2s ease;
}
.imovel-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 28px rgba(37,50,31,.12);
}
.imovel-card-foto{
  aspect-ratio:4/3;
  background:var(--bege);
  display:flex;
  align-items:center;
  justify-content:center;
}
.imovel-card-foto img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.imovel-sem-foto{
  color:#8b9280;
  font-size:13px;
}
.imovel-card-info{ padding:18px 20px; }
.imovel-card-info h3{ font-size:17px; margin-bottom:6px; }
.imovel-card-local{ font-size:13px; color:#6b7362; margin-bottom:8px; }
.imovel-card-valor{ font-weight:700; color:var(--verde-escuro); margin-bottom:6px; }
.imovel-card-detalhes{ font-size:13px; color:#6b7362; }

/* ---------- PAGINA DE UM IMOVEL ---------- */
.pagina-imovel{ padding:60px 0 90px; }

.imovel-detalhe{
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:44px;
  margin-top:20px;
}

.imovel-foto-principal{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:var(--radius);
}
.imovel-sem-foto-grande{
  width:100%;
  aspect-ratio:4/3;
  border-radius:var(--radius);
  background:var(--bege);
  color:#8b9280;
  display:flex;
  align-items:center;
  justify-content:center;
}
.imovel-miniaturas{
  display:flex;
  gap:10px;
  margin-top:10px;
  flex-wrap:wrap;
}
.imovel-miniaturas img{
  width:76px;
  height:56px;
  object-fit:cover;
  border-radius:var(--radius);
  border:1px solid var(--bege-escuro);
}

.imovel-info h1{ font-size:28px; margin-bottom:10px; }
.imovel-valor{
  font-size:22px;
  font-weight:700;
  color:var(--verde-escuro);
  margin-bottom:20px;
}
.imovel-caracteristicas{
  list-style:none;
  margin-bottom:24px;
}
.imovel-caracteristicas li{
  font-size:14px;
  padding:8px 0;
  border-bottom:1px solid var(--bege-escuro);
}
.imovel-descricao{ margin-bottom:24px; }
.imovel-descricao h2{ font-size:17px; margin-bottom:10px; }
.imovel-descricao p{ font-size:14px; line-height:1.7; }

.imovel-corretor{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:22px;
  padding:14px;
  background:var(--bege);
  border-radius:var(--radius);
}
.imovel-corretor img{
  width:48px;
  height:48px;
  border-radius:50%;
  object-fit:cover;
}
.imovel-corretor-nome{ font-weight:600; font-size:14px; }
.imovel-corretor-creci{ font-size:12px; color:#6b7362; }

.imovel-cta{ width:100%; text-align:center; }

/* ---------- RESPONSIVO ---------- */
@media (max-width: 900px){
  .hero h1{ font-size:34px; }
  .titulo-secao{ font-size:27px; }
  .hub-grid-2, .hub-grid-3{ grid-template-columns:1fr; }
  .categorias-grid{ grid-template-columns:repeat(2, 1fr); }
  .imoveis-grid{ grid-template-columns:repeat(2, 1fr); }
  .imovel-detalhe{ grid-template-columns:1fr; }
  .diferenciais-grid{ grid-template-columns:repeat(2, 1fr); }
  .equipe-grid{ grid-template-columns:1fr; }
  .container-rodape{ grid-template-columns:1fr; }
}
