/* Somente vitrine pública: não altera estilos do CRM. */
:root { --site-ink:#10243d; --site-accent:#1679ce; }
body { font-family:Inter,system-ui,sans-serif; background:#f5f7fa; color:var(--site-ink); }
.navbar-dark { background:#0b1e35; border-bottom:1px solid #ffffff12; }
.public-nav-links { display:flex; align-items:center; gap:24px; font-size:13px; color:#dce9f5; }
.public-nav-links a { transition:color .18s,background .18s; }
.public-nav-links a:hover { color:#7dd3fc; }
.public-nav-links .nav-contact { background:#e0f5ff; color:#123551; border-radius:10px; padding:10px 14px; font-weight:600; }
.public-nav-links .internal-access { font-size:11px; border:0; background:none; padding:8px 0; color:#abbfd3; }
.site-hero { background:radial-gradient(ellipse at 80% 10%,#12537655,transparent 55%),linear-gradient(120deg,#0c213a,#133653); }
.site-hero>.absolute { opacity:.025; pointer-events:none; }
.hero-content { padding-top:48px; padding-bottom:46px; }
.site-hero h1 { font-size:clamp(30px,4vw,52px); line-height:1.12; letter-spacing:-.04em; font-weight:750; }
.site-hero h1+p { color:#c3d5e7; font-size:17px; line-height:1.6; margin-bottom:24px; }
.hero-content>div:first-child { margin-bottom:18px; color:#a7e4ff; border-color:#7dd3fc33; padding:6px 12px; }
.hero-search-bar { background:white; border:1px solid #dceaf4; box-shadow:0 12px 36px #0002; }
#heroSearch { min-width:0; width:0; flex:1 1 0%; font-size:15px; padding-top:15px; padding-bottom:15px; }
#heroBtn { flex:0 0 auto; padding:14px 23px; background:#176cbb; box-shadow:none; transform:none; font-size:14px; }
#heroBtn:hover { background:#125b9e; }
.hero-type-filters { display:none!important; }
.search-examples { display:flex; justify-content:center; flex-wrap:wrap; align-items:center; gap:8px; margin-top:18px; font-size:12px; }
.search-examples span { color:#b5c8d8; }
.search-examples button { padding:7px 11px; border:1px solid #ffffff30; border-radius:20px; background:#ffffff08; color:#e8f4ff; }
.search-examples button:hover { background:#ffffff18; }
.how-it-works { padding:22px 0; }
.how-it-works h2,.how-it-works h2+p { display:none; }
.how-it-works .grid { gap:24px; }
.how-it-works .grid>div { text-align:left; display:grid; grid-template-columns:38px 1fr; column-gap:12px; align-content:start; }
.how-it-works .grid>div>div { grid-row:1 / 3; width:38px;height:38px;border-radius:12px;margin:0;box-shadow:none;background:#eef6fc; }
.how-it-works i { font-size:16px; color:#2570b5; }
.how-it-works h3 { font-size:13px; margin:0 0 4px; }
.how-it-works p { font-size:12px;line-height:1.5;margin:0; }
#imoveis { padding-top:36px; scroll-margin-top:90px; border-top:0; }
.section-eyebrow { font-size:10px; letter-spacing:.15em;font-weight:700;color:#55718d;display:block;margin-bottom:7px; }
#imoveis>div.bg-white { padding:18px; box-shadow:0 2px 8px #142e4610; border-color:#e3eaf1; }
.property-card { display:flex;flex-direction:column; box-shadow:0 3px 12px #142e4608; border-color:#e0e7ef; border-radius:16px; transition:transform .2s,box-shadow .2s; }
.property-card:hover { transform:translateY(-3px);box-shadow:0 12px 28px #142e4614; }
.property-card>div:first-child { aspect-ratio:16 / 10; flex-shrink:0; }
.property-card>div:first-child>img { height:100%;width:100%;object-fit:cover; }
.property-card>div.p-4 { padding:18px;flex:1;display:flex;flex-direction:column; }
.property-price { font-size:23px;letter-spacing:-.035em;font-weight:750;color:#113855;margin-bottom:7px; }
.property-card h3 { font-size:14px;line-height:1.5;min-height:42px; }
.property-card h3+p { font-size:12px;min-height:18px; }
.property-code { background:none;border:0;color:#758497;font-size:10px;padding:0;border-radius:0; }
.property-specs { flex-wrap:wrap;gap:14px;font-size:12px;padding:10px 0;margin-top:6px; }
.property-card .border-t { margin-top:auto; }
.property-card .top-3.right-3 { background:#fffefb;color:#285445;box-shadow:0 2px 8px #0001;font-size:10px;letter-spacing:.04em; }
:is(a,button,input,select):focus-visible { outline:3px solid #38bdf8;outline-offset:3px; }
@media(max-width:767px) {
 .navbar-dark .h-16 { height:auto; min-height:64px; flex-wrap:wrap; padding-bottom:10px; }
 .public-nav-links { gap:12px;flex-wrap:wrap;justify-content:flex-end;max-width:calc(100% - 75px);font-size:11px; }
 .public-nav-links .nav-contact { padding:7px 9px; }
 .public-nav-links .internal-access { font-size:10px;padding:0; }
 .hero-content { padding-top:30px;padding-bottom:28px; }
 .hero-break { display:none; }
 .site-hero h1+p { font-size:14px;margin-bottom:22px; }
 #heroSearch { padding-left:32px;padding-right:5px;font-size:13px; }
 .hero-search-bar>i { left:14px;font-size:14px; }
 #heroBtn { padding:13px 12px;font-size:12px; }
 #heroBtn i { margin-right:4px; }
 .search-examples { gap:6px;font-size:11px;margin-top:14px; }
 .search-examples span { display:none; }
 .how-it-works { padding:18px 0; }
 .how-it-works .grid { grid-template-columns:repeat(3,minmax(0,1fr));gap:10px; }
 .how-it-works .grid>div { display:block;text-align:center; }
 .how-it-works .grid>div>div { margin:0 auto 8px;width:30px;height:30px; }
 .how-it-works h3 { font-size:11px; }
 .how-it-works .grid p { display:none; }
 #imoveis { padding-top:25px;scroll-margin-top:120px; }
 #imoveis>div.bg-white { padding:14px; }
}
@media(prefers-reduced-motion:reduce) { .property-card,.property-card img,.search-examples button { transition:none!important;transform:none!important; } html { scroll-behavior:auto; } }

/* Identidade completa: cabeçalho, abertura editorial e rodapé. */
.navbar-dark { background:#091d30; }
.navbar-dark>div { background:none; }
.navbar-dark .h-16 { height:90px; }
.site-brand { gap:6px;flex-shrink:0; }
.site-brand img { width:86px;height:72px; }
.brand-wordmark { color:#fff;font-size:27px;font-weight:800;letter-spacing:-1px;line-height:1.1; }
.brand-wordmark>span,.footer-brand-name>span { color:#53d3ed;margin-left:4px; }
.brand-wordmark small { display:block;font-size:7px;letter-spacing:1.3px;color:#a6bfd0;margin-top:8px;font-weight:500; }
.public-nav-links { gap:24px; }
.public-nav-links .nav-contact { background:#65def1;color:#08293b;padding:13px 17px;border-radius:12px;box-shadow:0 4px 18px #46d6eb18; }
.site-hero { background:radial-gradient(ellipse at 55% 0%,#11648255,transparent 65%),#0b253c; }
.hero-content { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:52px;align-items:center;padding-top:34px;padding-bottom:65px;text-align:left; }
.hero-content>.hero-copy { margin:0;border:0;padding:0;color:inherit; }
.hero-copy>div:first-child { margin-bottom:22px;color:#9ae3f1;font-size:11px; }
.site-hero h1 { font-size:clamp(34px,3.6vw,51px);line-height:1.13; }
.hero-emphasis { color:#84e3ef; }
.site-hero h1+p { margin-left:0;margin-right:0;font-size:16px; }
.hero-copy .hero-break { display:none; }
.hero-copy .search-examples { justify-content:flex-start; }
.hero-search-bar { border-radius:15px; }
.hero-visual { position:relative;min-width:0;padding-bottom:24px; }
.hero-photo-link { position:relative;display:block;border-radius:90px 22px 22px 22px;overflow:hidden;isolation:isolate;height:440px;background:#eaf0f5;box-shadow:0 24px 60px #0003;border:1px solid #ffffff26; }
.hero-photo-link>img { width:100%;height:100%;object-fit:cover;transition:transform .6s; }
.hero-photo-link:hover>img { transform:scale(1.035); }
.hero-photo-shade { position:absolute;inset:0;background:linear-gradient(transparent 30%,#041827ed);pointer-events:none; }
.hero-photo-label { position:absolute;left:26px;right:26px;bottom:50px;display:grid;gap:10px; }
#heroPropertyEyebrow { font-size:9px;font-weight:700;letter-spacing:2px;color:#a0e9f3; }
#heroPropertyTitle { font-size:20px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; }
#heroPropertyPrice { font-size:13px;color:#d9eef4; }
.hero-human-note { position:absolute;left:-20px;bottom:0;display:flex;align-items:center;gap:12px;background:#fff;color:#17354b;padding:16px 22px;border-radius:14px;box-shadow:0 12px 30px #0002; }
.human-note-icon { display:grid;place-items:center;width:40px;height:40px;background:#e3f8f9;border-radius:50%;color:#147880; }
.hero-human-note strong { font-size:13px;display:block; }
.hero-human-note small { font-size:11px;color:#667c8d;display:block;margin-top:4px; }
.site-footer { background:radial-gradient(ellipse at 15% 0%,#16465b70,transparent 60%),#091e31;color:#bdcdd9;border-top:0;margin-top:35px; }
.footer-invitation { display:flex;align-items:center;justify-content:space-between;gap:32px;padding:8px 0 40px;margin-bottom:40px;border-bottom:1px solid #ffffff1c; }
.footer-invitation>div>span { color:#6edeea;font-size:10px;letter-spacing:2px;font-weight:600; }
.footer-invitation h2 { color:#f2fbff;font-size:32px;font-weight:650;letter-spacing:-1px;margin:10px 0; }
.footer-invitation p { font-size:14px;color:#adc5d5; }
.footer-invitation>a { white-space:nowrap;background:#6de0ed;color:#0a293d;padding:16px 22px;border-radius:12px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:12px; }
.site-footer .text-gray-900,.site-footer h4 { color:#f0f8ff; }
.site-footer .text-gray-600,.site-footer .text-gray-500 { color:#b2c5d4; }
.site-footer .border-gray-200 { border-color:#ffffff1c; }
.site-footer .md\:col-span-2>div>img { width:80px;height:65px;object-fit:contain; }
.site-footer .md\:col-span-2>p { max-width:420px; }
.footer-brand-name { font-size:28px;font-weight:800;letter-spacing:-1px;color:white; }
.footer-phone { font-size:13px;color:#89dfea; }
.site-footer a:hover { color:#67e8f9; }
.site-footer .footer-invitation>a:hover { background:#a0edf5;color:#0a293d; }
@media(max-width:900px) and (min-width:768px) { .brand-wordmark small { display:none; }.public-nav-links { gap:14px;font-size:12px; }.hero-content { gap:24px; } }
@media(max-width:767px) {
 .navbar-dark .h-16 { height:auto;min-height:0;padding-top:10px;padding-bottom:12px;gap:8px; }
 .site-brand { margin:auto; }
 .site-brand img { width:60px;height:45px; }
 .brand-wordmark { font-size:24px; }.brand-wordmark small { font-size:6px;margin-top:5px; }
 .public-nav-links { width:100%;max-width:none;flex-wrap:nowrap;justify-content:center;gap:18px;font-size:11px; }
 .public-nav-links .nav-contact { padding:10px 12px;font-size:11px; }
 .hero-content { grid-template-columns:minmax(0,1fr);gap:28px;padding-top:30px;padding-bottom:32px;text-align:center; }
 .hero-copy>div:first-child { margin-bottom:17px; }
 .site-hero h1 { font-size:clamp(31px,7.8vw,42px); }
 .site-hero h1+p { font-size:14px; }
 .hero-copy .search-examples { justify-content:center; }
 .hero-visual { padding-bottom:20px; }
 .hero-photo-link { height:240px;border-radius:45px 16px 16px 16px; }
 .hero-photo-label { text-align:left;left:20px;right:20px;bottom:38px;gap:6px; }
 #heroPropertyTitle { font-size:17px; }
 .hero-human-note { left:12px;padding:10px 14px;gap:10px; }
 .hero-human-note strong { font-size:11px; }.hero-human-note small { font-size:10px; }
 .human-note-icon { width:30px;height:30px; }
 .footer-invitation { flex-direction:column;align-items:flex-start;gap:22px;padding-bottom:30px;margin-bottom:30px; }
 .footer-invitation h2 { font-size:27px; }.footer-invitation p { line-height:1.7; }
 .site-footer .py-12 { padding-top:36px;padding-bottom:28px; }
 .site-footer .md\:col-span-2>div>img { width:64px;height:50px; }
 .site-footer .text-sm { font-size:12px; }
}
@media(prefers-reduced-motion:reduce) { .hero-photo-link>img { transition:none;transform:none!important; } }
