/* BusqueCasa Guia — Entrega 02 / Componentes oficiais — visual homologado
   Mobile first, namespace bcg- para evitar conflito com o portal existente. */
:root{
  --bcg-deep:#071b34;--bcg-navy:#0b315b;--bcg-blue:#0878ff;--bcg-cyan:#19b5ff;
  --bcg-orange:#ff7a00;--bcg-ink:#10233d;--bcg-text:#42526a;--bcg-soft:#f4f8fc;
  --bcg-line:#dce8f3;--bcg-white:#fff;--bcg-success:#0b8f68;--bcg-warn:#b36a00;
  --bcg-shadow:0 18px 50px rgba(7,27,52,.10);--bcg-radius:24px;
}
html{scroll-behavior:smooth}.bcg-page{background:#f6f9fc;color:var(--bcg-ink);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y}
.bcg-wrap{width:min(1180px,calc(100% - 28px));margin-inline:auto}.bcg-narrow{width:min(860px,calc(100% - 28px));margin-inline:auto}
.bcg-hero{position:relative;isolation:isolate;padding:44px 0 34px;background:linear-gradient(135deg,#06172c 0%,#0a3563 58%,#0878ff 145%);color:#fff;overflow:hidden}
.bcg-hero:before,.bcg-hero:after{content:"";position:absolute;border-radius:999px;filter:blur(10px);z-index:-1;opacity:.55}.bcg-hero:before{width:260px;height:260px;background:#19b5ff;right:-110px;top:-110px}.bcg-hero:after{width:210px;height:210px;background:#ff7a00;left:-130px;bottom:-130px;opacity:.22}
.bcg-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.bcg-hero h1{margin:16px 0 14px;font-size:clamp(32px,8vw,56px);line-height:1.04;letter-spacing:-.035em;max-width:920px}.bcg-hero p{max-width:780px;margin:0;font-size:16px;line-height:1.7;color:rgba(255,255,255,.84)}
.bcg-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.bcg-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:0 18px;border-radius:14px;font-weight:800;text-decoration:none;border:1px solid transparent;transition:.22s ease;cursor:pointer}.bcg-btn-primary{background:linear-gradient(135deg,#ff8a00,#ff6a00);color:#fff;box-shadow:0 12px 26px rgba(255,122,0,.24)}.bcg-btn-primary:hover{transform:translateY(-2px);color:#fff}.bcg-btn-ghost{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff}.bcg-btn-ghost:hover{background:rgba(255,255,255,.14);color:#fff}
.bcg-section{padding:42px 0}.bcg-section-tight{padding:30px 0}.bcg-section-white{background:#fff}.bcg-kicker{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--bcg-blue);margin-bottom:8px}.bcg-title{font-size:clamp(27px,6vw,42px);line-height:1.12;letter-spacing:-.025em;margin:0 0 12px}.bcg-lead{font-size:16px;line-height:1.72;color:var(--bcg-text);max-width:820px}
.bcg-profile-grid{display:grid;gap:12px;margin-top:22px}.bcg-profile{position:relative;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--bcg-line);box-shadow:0 10px 25px rgba(7,27,52,.05);transition:.2s}.bcg-profile:hover{transform:translateY(-2px);border-color:#bcd6ef}.bcg-profile strong{display:block;font-size:16px;margin-bottom:5px}.bcg-profile span{font-size:14px;line-height:1.5;color:var(--bcg-text)}
.bcg-path{display:grid;gap:12px;margin-top:24px}.bcg-step{position:relative;padding:20px 18px 18px 66px;background:#fff;border:1px solid var(--bcg-line);border-radius:20px;box-shadow:0 10px 30px rgba(7,27,52,.05);transition:.22s}.bcg-step:hover{transform:translateY(-3px);box-shadow:var(--bcg-shadow)}.bcg-step-num{position:absolute;left:16px;top:17px;width:38px;height:38px;border-radius:13px;background:linear-gradient(135deg,#0b315b,#0878ff);color:#fff;display:grid;place-items:center;font-weight:900}.bcg-step h3{font-size:18px;margin:0 0 6px}.bcg-step p{font-size:14px;line-height:1.55;color:var(--bcg-text);margin:0}.bcg-step a{color:inherit;text-decoration:none}.bcg-step-active{border-color:#78b8ff;background:linear-gradient(180deg,#fff,#f1f8ff)}.bcg-step-disabled{opacity:.74}.bcg-step-tag{display:inline-flex;margin-top:10px;font-size:11px;font-weight:800;color:#657892;background:#eef4f9;padding:5px 8px;border-radius:999px}.bcg-step-active .bcg-step-tag{background:#e5f2ff;color:#0966c2}
.bcg-info-band{padding:20px;border-radius:20px;background:linear-gradient(135deg,#ecf7ff,#fff7ed);border:1px solid #d9ebf9;display:grid;gap:12px}.bcg-info-band strong{font-size:18px}.bcg-info-band p{margin:0;color:var(--bcg-text);line-height:1.65}
.bcg-breadcrumb{display:flex;flex-wrap:wrap;gap:7px;align-items:center;font-size:13px;margin-bottom:18px;color:#6a7c92}.bcg-breadcrumb a{color:#0a67bf;text-decoration:none}.bcg-breadcrumb a:hover{text-decoration:underline}
.bcg-card{background:#fff;border:1px solid var(--bcg-line);border-radius:var(--bcg-radius);box-shadow:var(--bcg-shadow);padding:22px}.bcg-card h2{font-size:25px;line-height:1.2;margin:0 0 12px}.bcg-card h3{font-size:19px;margin:24px 0 8px}.bcg-card p,.bcg-card li{font-size:16px;line-height:1.72;color:var(--bcg-text)}.bcg-card ul{padding-left:20px}
.bcg-checklist{display:grid;gap:10px;margin-top:18px}.bcg-check{display:flex;gap:12px;align-items:flex-start;padding:14px 15px;border-radius:16px;background:#f8fbfe;border:1px solid #e6eef6}.bcg-check-icon{width:26px;height:26px;flex:0 0 26px;border-radius:9px;background:#e7f3ff;color:#0878ff;display:grid;place-items:center;font-weight:900}.bcg-check strong{display:block;font-size:15px}.bcg-check span{font-size:13px;line-height:1.48;color:#657892}
.bcg-topic-grid{display:grid;gap:12px;margin-top:18px}.bcg-topic{padding:18px;border-radius:18px;border:1px solid var(--bcg-line);background:#fff;text-decoration:none;color:inherit;transition:.22s}.bcg-topic:hover{transform:translateY(-2px);border-color:#9dcaef;color:inherit}.bcg-topic small{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef6ff;color:#0b67c1;font-weight:800;font-size:11px}.bcg-topic h3{font-size:17px;margin:11px 0 5px}.bcg-topic p{margin:0;font-size:14px;line-height:1.55;color:var(--bcg-text)}
.bcg-quick{margin-top:-20px;position:relative;z-index:4}.bcg-quick-inner{background:#fff;border:1px solid #dbe8f4;border-radius:22px;padding:20px;box-shadow:0 16px 45px rgba(7,27,52,.13)}.bcg-quick-label{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8f5ee;color:#08785a;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.bcg-quick p{margin:12px 0 0;font-size:16px;line-height:1.7;color:var(--bcg-text)}
.bcg-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.bcg-badge-essential{background:#eaf4ff;color:#075fae}.bcg-badge-recommended{background:#eef8f3;color:#067054}.bcg-badge-conditional{background:#fff5e8;color:#9b5800}
.bcg-warning{margin:18px 0;padding:18px;border-radius:18px;background:#fff8ed;border:1px solid #ffd9a8}.bcg-warning strong{color:#8a4a00}.bcg-warning p{margin:5px 0 0;color:#6d5337;line-height:1.6}
.bcg-source{padding:18px;border-radius:18px;background:#f4f9fd;border:1px solid #dcebf6}.bcg-source strong{display:block;margin-bottom:5px}.bcg-source p{margin:0 0 10px;font-size:14px;line-height:1.55;color:var(--bcg-text)}.bcg-source a{font-weight:800;color:#086bca;text-decoration:none}.bcg-source a:hover{text-decoration:underline}
.bcg-faq{display:grid;gap:9px;margin-top:18px}.bcg-faq details{background:#fff;border:1px solid var(--bcg-line);border-radius:16px;padding:0 15px}.bcg-faq summary{list-style:none;cursor:pointer;padding:16px 32px 16px 0;font-weight:800;position:relative}.bcg-faq summary::-webkit-details-marker{display:none}.bcg-faq summary:after{content:"+";position:absolute;right:0;top:13px;width:28px;height:28px;border-radius:9px;background:#edf5fc;color:#0a67bf;display:grid;place-items:center}.bcg-faq details[open] summary:after{content:"–"}.bcg-faq details p{padding:0 0 16px;margin:0;color:var(--bcg-text);line-height:1.65}
.bcg-next{display:grid;gap:10px;padding:22px;border-radius:22px;background:linear-gradient(135deg,#071b34,#0c4076);color:#fff}.bcg-next small{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#7bd3ff}.bcg-next strong{font-size:23px;line-height:1.25}.bcg-next p{margin:0;color:rgba(255,255,255,.78);line-height:1.6}
.bcg-progress-mobile{position:sticky;top:0;z-index:30;background:rgba(247,250,252,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--bcg-line);padding:9px 14px}.bcg-progress-mobile button{width:100%;border:0;background:#fff;border-radius:13px;padding:11px 13px;text-align:left;font-weight:800;color:var(--bcg-ink);box-shadow:0 6px 18px rgba(7,27,52,.06)}
.bcg-progress-panel{display:none;margin-top:8px;background:#fff;border:1px solid var(--bcg-line);border-radius:14px;padding:10px}.bcg-progress-panel.is-open{display:grid;gap:6px}.bcg-progress-panel a,.bcg-progress-panel span{display:flex;align-items:center;gap:9px;padding:9px;border-radius:10px;text-decoration:none;color:#53657c;font-size:13px}.bcg-progress-panel .is-current{background:#eaf4ff;color:#075fae;font-weight:800}
.bcg-ai-fab{position:fixed;z-index:70;right:16px;bottom:16px;border:0;border-radius:18px;padding:12px 15px 12px 12px;background:linear-gradient(135deg,#0a315b,#0878ff 65%,#19b5ff);color:#fff;display:flex;align-items:center;gap:10px;box-shadow:0 18px 38px rgba(0,76,158,.32);font-weight:900;cursor:pointer;animation:bcgFabIn .7s cubic-bezier(.2,.8,.2,1) both}.bcg-ai-fab-icon{width:38px;height:38px;border-radius:13px;background:rgba(255,255,255,.15);display:grid;place-items:center;font-size:20px;position:relative}.bcg-ai-fab-icon:after{content:"";position:absolute;inset:-5px;border:1px solid rgba(91,206,255,.55);border-radius:17px;animation:bcgPulse 2.2s infinite}.bcg-ai-fab small{display:block;font-size:10px;color:#bfe9ff;line-height:1}.bcg-ai-fab span{display:block;font-size:13px;line-height:1.2}
.bcg-ai-sheet-backdrop{position:fixed;inset:0;z-index:79;background:rgba(3,16,31,.5);opacity:0;pointer-events:none;transition:.22s}.bcg-ai-sheet-backdrop.is-open{opacity:1;pointer-events:auto}.bcg-ai-sheet{position:fixed;left:0;right:0;bottom:0;z-index:80;background:#fff;border-radius:24px 24px 0 0;padding:20px 18px 26px;transform:translateY(105%);transition:.28s cubic-bezier(.2,.8,.2,1);box-shadow:0 -20px 60px rgba(3,16,31,.22)}.bcg-ai-sheet.is-open{transform:translateY(0)}.bcg-ai-sheet-top{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.bcg-ai-sheet h2{font-size:23px;margin:0 0 7px}.bcg-ai-sheet p{margin:0;color:var(--bcg-text);line-height:1.6}.bcg-ai-sheet-close{border:0;background:#edf4fa;width:38px;height:38px;border-radius:12px;font-size:20px;cursor:pointer}.bcg-ai-note{margin-top:16px;padding:14px;border-radius:15px;background:#f1f7fc;color:#53657c;font-size:13px;line-height:1.55}.bcg-ai-actions{display:flex;gap:10px;margin-top:16px}.bcg-ai-actions .bcg-btn{flex:1}
.bcg-animate{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.bcg-animate.is-visible{opacity:1;transform:none}
@keyframes bcgFabIn{from{opacity:0;transform:translateY(20px) scale(.94)}to{opacity:1;transform:none}}@keyframes bcgPulse{0%,100%{opacity:.2;transform:scale(.95)}50%{opacity:.75;transform:scale(1.08)}}
@media(min-width:720px){.bcg-hero{padding:72px 0 62px}.bcg-section{padding:64px 0}.bcg-profile-grid{grid-template-columns:repeat(4,1fr)}.bcg-path{grid-template-columns:repeat(3,1fr)}.bcg-topic-grid{grid-template-columns:repeat(2,1fr)}.bcg-info-band{grid-template-columns:.85fr 2fr;align-items:center}.bcg-card{padding:34px}.bcg-ai-sheet{left:auto;right:22px;bottom:22px;width:430px;border-radius:24px}.bcg-progress-mobile{display:none}.bcg-ai-fab{right:22px;bottom:22px}.bcg-ai-fab small{font-size:11px}.bcg-ai-fab span{font-size:14px}}
@media(min-width:1024px){.bcg-path{grid-template-columns:repeat(3,1fr)}.bcg-topic-grid{grid-template-columns:repeat(3,1fr)}.bcg-main-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:28px}.bcg-sticky-aside{position:sticky;top:22px;align-self:start}.bcg-desktop-progress{display:grid;gap:7px;padding:16px;border-radius:20px;background:#fff;border:1px solid var(--bcg-line);box-shadow:0 12px 34px rgba(7,27,52,.06)}.bcg-desktop-progress a,.bcg-desktop-progress span{padding:10px 11px;border-radius:11px;font-size:13px;color:#607188;text-decoration:none}.bcg-desktop-progress .is-current{background:#eaf4ff;color:#075fae;font-weight:900}}
@media(max-width:719px){.bcg-hero-actions .bcg-btn{width:100%}.bcg-ai-fab{left:14px;right:14px;justify-content:center}.bcg-ai-fab small{display:none}.bcg-ai-fab span{font-size:14px}.bcg-section{padding-bottom:36px}.bcg-title{font-size:30px}.bcg-card{border-radius:20px}.bcg-quick{margin-top:-12px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.bcg-animate,.bcg-ai-fab,.bcg-ai-fab-icon:after{animation:none!important;transition:none!important}.bcg-animate{opacity:1;transform:none}}

/* Entrega 03 — integração da vitrine oficial do portal, sem duplicar estoque */
.bcg-properties-more{display:flex;justify-content:center;margin-top:20px}.bcg-properties-more .bcg-btn{min-width:220px}@media(max-width:719px){.bcg-properties-more .bcg-btn{width:100%}}

/* Entrega 05 — captação leve antes do acesso à IA */
.bcg-ai-form{display:grid;gap:13px;margin-top:18px}.bcg-ai-field{display:grid;gap:6px}.bcg-ai-field>span{font-size:13px;font-weight:850;color:var(--bcg-ink)}.bcg-ai-field input,.bcg-ai-field select{width:100%;min-height:48px;border:1px solid #cdddea;border-radius:13px;background:#fff;color:var(--bcg-ink);font:inherit;padding:0 13px;outline:none;transition:.18s}.bcg-ai-field input:focus,.bcg-ai-field select:focus{border-color:#5aa9f3;box-shadow:0 0 0 3px rgba(8,120,255,.10)}.bcg-ai-field small{font-size:11px;color:#718298}.bcg-ai-login-note{display:grid;gap:3px;padding:13px 14px;border-radius:15px;background:#fff8ed;border:1px solid #ffdfb5;color:#6f573a;font-size:12px;line-height:1.5}.bcg-ai-login-note strong{color:#8a4a00}.bcg-ai-error{padding:11px 13px;border-radius:13px;background:#fff0f0;border:1px solid #ffc9c9;color:#a52a2a;font-size:12px;line-height:1.5}.bcg-ai-success{text-align:center;margin-top:18px}.bcg-ai-success-icon{width:52px;height:52px;margin:0 auto 10px;border-radius:17px;background:#e9f8f1;color:#08785a;display:grid;place-items:center;font-size:25px;font-weight:900}.bcg-ai-success h3{font-size:22px;margin:0 0 7px}.bcg-ai-success p{font-size:14px;margin-bottom:14px}.bcg-ai-success .bcg-btn{width:100%;margin-top:14px}.bcg-ai-actions button:disabled{opacity:.7;cursor:wait;transform:none}.bcg-ai-sheet{max-height:min(88vh,760px);overflow-y:auto}
