/* ============================================================
   TJA7 EMPREENDIMENTOS · TEMA GLOBAL
   Identidade: azul royal + laranja das 5 estrelas + Archivo
   Usado por: home, /imoveis, /imovel/{id}, /loteamento
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Archivo+Black&family=Archivo:wght@400;500;600;700;800;900&display=swap');

:root{
  --azul:#2447C5;
  --azul-vivo:#3B62E8;
  --azul-noite:#0C1D55;
  --laranja:#EA7623;
  --laranja-claro:#FFB27A;
  --gelo:#F5F7FD;
  --verde:#2E9E5B; --amarelo:#E5A33D; --roxo:#9333EA; --vermelho:#D64533;
  --tinta:#18203a; --tinta-fraca:#5d6883; --borda:#e1e6f4;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Archivo',sans-serif;color:var(--tinta);background:var(--gelo);line-height:1.65}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.t7-wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.t7-eyebrow{font-size:12px;font-weight:800;letter-spacing:.42em;text-transform:uppercase;color:var(--laranja);display:inline-flex;align-items:center;gap:10px}
.t7-eyebrow::before{content:'';width:26px;height:2px;background:var(--laranja)}
h1,h2,h3{color:var(--azul-noite);line-height:1.12}
.t7-display{font-family:'Archivo Black',sans-serif}

/* botões */
.t7-botao{position:relative;display:inline-flex;align-items:center;gap:12px;background:var(--laranja);color:#fff;font-weight:800;font-size:15px;padding:16px 28px;border-radius:14px;border:0;cursor:pointer;overflow:hidden;transition:transform .18s, box-shadow .18s}
.t7-botao .seta{transition:transform .22s}
.t7-botao::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg, transparent 30%, rgba(255,255,255,.25) 50%, transparent 70%);transform:translateX(-110%);transition:transform .5s}
.t7-botao:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(234,118,35,.42)}
.t7-botao:hover::after{transform:translateX(110%)}
.t7-botao:hover .seta{transform:translateX(5px)}
.t7-botao--azul{background:var(--azul)}
.t7-botao--azul:hover{box-shadow:0 16px 34px rgba(36,71,197,.4)}
.t7-botao--claro{background:#fff;color:var(--azul);border:1.5px solid var(--borda)}
.t7-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}

/* header padrão das páginas internas (sólido) */
.t7-header{position:sticky;top:0;z-index:90;background:var(--azul-noite);padding:12px 0;box-shadow:0 8px 30px rgba(6,14,45,.3)}
.t7-topo{display:flex;align-items:center;justify-content:space-between;gap:16px}
.t7-logo{display:flex;flex-direction:column;line-height:1;color:#fff}
.t7-logo svg{height:14px;width:auto;margin-bottom:4px}
.t7-logo__nome{font-family:'Archivo Black',sans-serif;font-size:24px;color:#fff}
.t7-logo__sub{font-size:7.8px;letter-spacing:.4em;font-weight:800;color:var(--laranja-claro);margin-top:3px}
.t7-nav{display:flex;gap:4px}
.t7-nav a{color:#e4ebff;font-weight:700;font-size:14px;padding:10px 15px;border-radius:99px;transition:background .18s}
.t7-nav a:hover, .t7-nav a.ativo{background:rgba(255,255,255,.14);color:#fff}
.t7-header .t7-botao{padding:11px 20px;font-size:13px;border-radius:99px}
.t7-menu-btn{display:none;background:none;border:0;font-size:26px;cursor:pointer;color:#fff}
@media(max-width:940px){ .t7-nav, .t7-header .t7-botao{display:none} .t7-menu-btn{display:block} }
.t7-menu-mobile{display:none;position:fixed;inset:0;z-index:80;background:linear-gradient(160deg,var(--azul),var(--azul-noite));padding:110px 30px 30px}
.t7-menu-mobile.aberto{display:block}
.t7-menu-mobile a{display:block;color:#fff;font-family:'Archivo Black',sans-serif;font-size:26px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.12)}

/* cards de imóvel */
.t7-imoveis{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.t7-imovel{background:#fff;border:1px solid var(--borda);border-radius:22px;overflow:hidden;transition:transform .22s, box-shadow .22s;display:flex;flex-direction:column}
.t7-imovel:hover{transform:translateY(-8px);box-shadow:0 26px 54px rgba(12,29,85,.17)}
.t7-imovel__foto{position:relative;height:215px;overflow:hidden;background:#dfe5f4}
.t7-imovel__foto>div{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform .45s}
.t7-imovel:hover .t7-imovel__foto>div{transform:scale(1.07)}
.t7-badge{position:absolute;top:14px;left:14px;z-index:2;font-size:11.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#fff;padding:7px 14px;border-radius:99px;box-shadow:0 6px 16px rgba(0,0,0,.25)}
.t7-badge--venda{background:var(--azul)} .t7-badge--aluguel{background:var(--verde)} .t7-badge--ambos{background:var(--roxo)}
.t7-fotos-qtd{position:absolute;bottom:12px;right:12px;background:rgba(10,20,60,.75);color:#fff;font-size:12px;font-weight:700;border-radius:99px;padding:5px 12px}
.t7-imovel__corpo{padding:20px 22px 22px;display:flex;flex-direction:column;flex:1}
.t7-imovel__preco{font-family:'Archivo Black',sans-serif;font-size:22px;color:var(--azul-noite)}
.t7-imovel__preco small{font-family:'Archivo',sans-serif;font-weight:600;font-size:13px;color:var(--tinta-fraca)}
.t7-imovel__titulo{font-weight:700;font-size:15.5px;margin:6px 0 4px}
.t7-imovel__meta{font-size:13.5px;color:var(--tinta-fraca);flex:1}
.t7-imovel__cta{margin-top:14px;display:inline-flex;align-items:center;gap:7px;font-weight:800;font-size:13.5px;color:var(--laranja)}
@media(max-width:960px){ .t7-imoveis{grid-template-columns:1fr 1fr} }
@media(max-width:640px){ .t7-imoveis{grid-template-columns:1fr} }

/* filtros pill */
.t7-filtros{display:flex;gap:10px;flex-wrap:wrap}
.t7-filtro{font-weight:800;font-size:14px;padding:12px 24px;border-radius:99px;border:1.5px solid var(--borda);background:#fff;cursor:pointer;color:var(--tinta-fraca);transition:all .18s}
.t7-filtro:hover{border-color:var(--azul)}
.t7-filtro.ativo{background:var(--azul);border-color:var(--azul);color:#fff;box-shadow:0 10px 24px rgba(36,71,197,.3)}

/* formulários */
.t7-campo{border:1.5px solid var(--borda);border-radius:12px;background:#fff;padding:13px 16px;font-family:'Archivo',sans-serif;font-size:14.5px;color:var(--tinta);outline:0;transition:border .15s}
.t7-campo:focus{border-color:var(--azul)}

/* faixa de título das páginas internas */
.t7-faixa{background:linear-gradient(120deg, var(--azul) 0%, var(--azul-vivo) 100%);color:#fff;padding:56px 0 60px;position:relative;overflow:hidden}
.t7-faixa::after{content:'★';position:absolute;font-size:250px;color:rgba(255,255,255,.07);right:-40px;bottom:-100px}
.t7-faixa .t7-eyebrow{color:var(--laranja-claro)}
.t7-faixa h1{color:#fff;font-family:'Archivo Black',sans-serif;font-size:clamp(28px,4vw,46px);margin-top:12px}
.t7-faixa p{color:#dbe4ff;margin-top:10px;max-width:60ch}

/* rodapé */
.t7-footer{background:var(--azul-noite);color:#c3cef1;margin-top:90px}
.t7-versiculo{background:var(--azul);text-align:center;padding:24px 22px;font-style:italic;font-size:13.5px;color:#dbe4ff}
.t7-versiculo b{color:#fff;font-style:normal}
.t7-rodape{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding:50px 0 32px;border-bottom:1px solid rgba(255,255,255,.12)}
.t7-rodape h4{color:#fff;font-size:15px;margin-bottom:14px;font-weight:800}
.t7-rodape a{display:block;padding:5px 0;font-size:14px}
.t7-rodape a:hover{color:#fff}
.t7-rodape p{font-size:13.5px;margin-top:12px;max-width:34ch}
.t7-creditos{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:20px 0 24px;font-size:12.5px;color:#8595c9}
@media(max-width:860px){ .t7-rodape{grid-template-columns:1fr} }

/* FAB WhatsApp */
.t7-zap{position:fixed;right:22px;bottom:22px;z-index:95;width:60px;height:60px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 14px 32px rgba(37,211,102,.5);transition:transform .15s}
.t7-zap:hover{transform:scale(1.1)}
.t7-zap svg{width:30px;height:30px;fill:#fff}

/* reveals */
.t7-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.7,.3,1), transform .7s cubic-bezier(.2,.7,.3,1)}
.t7-reveal.on{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto} .t7-reveal{opacity:1;transform:none;transition:none} }
