/*
Theme Name: Portal do Bixiga Imóveis
Theme URI: https://www.portaldobixiga.com.br
Author: Portal do Bixiga
Author URI: https://www.portaldobixiga.com.br
Description: Portal imobiliário completo para o Portal do Bixiga. Reproduz todas as funcionalidades de um portal de imóveis (busca avançada, filtros, favoritos, mapa, galeria, WhatsApp, anúncios) com a identidade visual do Portal do Bixiga (verde e vermelho, Raleway + Open Sans). Banner, textos e cores editáveis pelo Personalizar.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pbimoveis
Tags: real-estate, imoveis, custom-post-type, responsive, custom-colors
*/

/* ==========================================================================
   Portal do Bixiga Imóveis — Folha de estilo principal
   Toda a base visual está aqui. Estilos de componentes ficam em
   assets/css/theme.css (carregado em seguida).
   ========================================================================== */

:root{
    /* Cores da marca do Portal do Bixiga (editáveis no Personalizar) */
    --pb-green:        #006838;
    --pb-green-dark:   #016831;
    --pb-green-light:  #018a40;
    --pb-red:          #d71921;
    --pb-red-dark:     #b3141b;
    --pb-gold:         #c8a24a;

    --pb-ink:          #222222;
    --pb-text:         #444444;
    --pb-muted:        #777777;
    --pb-line:         #e6e6e6;
    --pb-bg:           #ffffff;
    --pb-bg-soft:      #f5f5f5;
    --pb-bg-softer:    #fafafa;

    --pb-radius:       10px;
    --pb-radius-sm:    6px;
    --pb-shadow:       0 2px 10px rgba(0,0,0,.08);
    --pb-shadow-lg:    0 8px 30px rgba(0,0,0,.14);

    --pb-font-head:    'Raleway', 'Segoe UI', Arial, sans-serif;
    --pb-font-body:    'Open Sans', 'Segoe UI', Arial, sans-serif;

    --pb-container:    1200px;
}

*,*::before,*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; }

body{
    margin:0;
    font-family:var(--pb-font-body);
    font-size:15px;
    line-height:1.6;
    color:var(--pb-text);
    background:var(--pb-bg);
    -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,h5,h6{
    font-family:var(--pb-font-head);
    color:var(--pb-ink);
    line-height:1.25;
    margin:0 0 .5em;
    font-weight:700;
}

a{ color:var(--pb-green); text-decoration:none; transition:color .15s ease; }
a:hover{ color:var(--pb-green-dark); }

img{ max-width:100%; height:auto; display:block; }

.pb-container{
    width:100%;
    max-width:var(--pb-container);
    margin:0 auto;
    padding:0 20px;
}

/* -------- Botões -------- */
.pb-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    font-family:var(--pb-font-head);
    font-weight:600;
    font-size:14px;
    line-height:1;
    padding:12px 22px;
    border:2px solid transparent;
    border-radius:var(--pb-radius-sm);
    cursor:pointer;
    transition:all .18s ease;
    text-align:center;
    white-space:nowrap;
}
.pb-btn--green{ background:var(--pb-green); color:#fff; }
.pb-btn--green:hover{ background:var(--pb-green-dark); color:#fff; }
.pb-btn--red{ background:var(--pb-red); color:#fff; }
.pb-btn--red:hover{ background:var(--pb-red-dark); color:#fff; }
.pb-btn--wpp{ background:#25d366; color:#fff; }
.pb-btn--wpp:hover{ background:#1da851; color:#fff; }
.pb-btn--outline{ background:#fff; color:var(--pb-green); border-color:var(--pb-green); }
.pb-btn--outline:hover{ background:var(--pb-green); color:#fff; }
.pb-btn--ghost{ background:transparent; color:var(--pb-ink); border-color:var(--pb-line); }
.pb-btn--ghost:hover{ border-color:var(--pb-green); color:var(--pb-green); }
.pb-btn--block{ width:100%; }
.pb-btn--sm{ padding:8px 14px; font-size:13px; }
.pb-btn--lg{ padding:15px 30px; font-size:16px; }

/* -------- Utilitários -------- */
.pb-sr-only{ position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap; }
.pb-badge{ display:inline-block;padding:4px 10px;border-radius:20px;font-size:11px;font-weight:700;font-family:var(--pb-font-head);text-transform:uppercase;letter-spacing:.03em; }
.pb-badge--venda{ background:var(--pb-green); color:#fff; }
.pb-badge--aluguel{ background:var(--pb-red); color:#fff; }
.pb-badge--destaque{ background:var(--pb-gold); color:#fff; }
.pb-section-title{ font-size:26px; position:relative; padding-bottom:12px; margin-bottom:24px; }
.pb-section-title::after{ content:""; position:absolute; left:0; bottom:0; width:56px; height:4px; background:var(--pb-red); border-radius:2px; }
.pb-text-muted{ color:var(--pb-muted); }
.pb-mt-0{margin-top:0}.pb-mb-0{margin-bottom:0}
