/* Base: cores, tipografia, cabeçalho, rodapé, botões, formulários e cartões de imóvel (usado em todas as páginas) */
:root{--bg:#0F0E0C;--s:#1A1814;--s2:#26221B;--gold:#D4A437;--ink:#F0EADC;--mut:#A89F8C;--line:#38332A;color-scheme:dark}
*{box-sizing:border-box;margin:0}
body{font:17px/1.55 'Source Sans 3',system-ui,sans-serif;background:var(--bg);color:var(--ink)}
h1,h2,h3,.logo,.pr,.specs b{font-family:'Bricolage Grotesque',system-ui,sans-serif}
a{color:inherit;text-decoration:none}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
#topo{background:#0A0908;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
#topo .wrap{display:flex;align-items:center;gap:80px;min-height:64px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px;max-width:none;padding-left:16px;padding-right:16px}
#topo nav{display:flex;justify-content:flex-start;gap:4px;flex-wrap:wrap}
.logo{font-weight:800;font-size:22px;color:var(--gold)}
nav{display:flex;gap:4px;flex-wrap:wrap}
nav a{padding:8px 12px;border-radius:8px;font-weight:600;color:var(--mut)}
nav a.on,nav a:hover{color:var(--gold);background:var(--s2)}
#rodape{background:#0A0908;border-top:1px solid var(--line);color:var(--mut);padding:32px 0;font-size:15px}
#rodape b{color:var(--gold)}
#rodape a{opacity:.7}
section{padding:44px 0}
h2{font-size:30px;margin-bottom:20px;color:var(--gold)}
h3{color:var(--ink)}
label{display:grid;gap:4px;font-size:14px;font-weight:600;color:var(--mut)}
input,select,textarea{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);width:100%}
.btn{display:inline-block;background:var(--gold);color:#1A1204;font-weight:700;border:0;border-radius:8px;padding:12px 20px;cursor:pointer;text-align:center;font-size:16px;font-family:inherit}
.btn:hover{filter:brightness(1.1)}
.btn.g{background:#1FA855;color:#fff}
.btn.o{background:transparent;border:1px solid var(--gold);color:var(--gold);padding:8px 14px}
.btn.block{display:block}
.empty{padding:40px;text-align:center;color:var(--mut)}
.back{display:inline-block;margin-bottom:16px;font-weight:600;color:var(--mut)}
.loc{color:var(--mut);font-size:15px}
.box{background:var(--s);border:1px solid var(--line);border-radius:12px;padding:20px}
.tag{position:absolute;left:10px;top:10px;max-width:calc(100% - 20px);background:var(--gold);color:#1A1204;font-size:13px;font-weight:700;padding:3px 10px;border-radius:99px}
.grid{display:grid;gap:22px;grid-template-columns:repeat(auto-fill,minmax(270px,1fr))}
.card{background:var(--s);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:block}
.card:hover{border-color:var(--gold)}
.ph{position:relative;aspect-ratio:4/3;background:var(--s2)}
.ph img,.noimg{width:100%;height:100%;object-fit:cover;display:block}
.noimg{display:grid;place-items:center;color:var(--mut);font-weight:600}
.cb{padding:14px 16px 16px}
.pr{font-size:22px;font-weight:800;color:var(--gold)}
.pr small{font-size:14px;font-weight:600;color:var(--mut)}
.card h3{font-size:17px;margin:4px 0 2px}
.sp{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:14px;color:var(--mut)}

/* logo no header */
.logo{display:flex;align-items:center;gap:8px}
.logo-img{width:44px;height:44px;border-radius:50%;object-fit:cover;flex-shrink:0}

/* esconde badge Netlify */
a[href*="netlify.com"][style*="position"]{display:none!important}
div[data-netlify-deploy-id],#netlify-badge,[data-testid="deploy-button"]{display:none!important}
body > div[style*="z-index: 99999"],body > div[style*="z-index:99999"]{display:none!important}
