:root{
  --ink:#1c1c1c; --gold:#b6862c; --gold-light:#e9d9ad; --cream:#faf7f0;
  --card:#ffffff; --sub:#5a5a5a; --muted:#8a8a83; --border:#e4ddc9;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--cream);font-family:"Segoe UI",Helvetica,Arial,sans-serif;color:var(--ink);}
a{color:inherit;text-decoration:none;}
header.topo{background:var(--ink);padding:18px 24px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;}
header.topo .marca{font-family:Georgia,'Times New Roman',serif;font-size:22px;color:#fff;}
header.topo .marca span{color:var(--gold-light);}
header.topo .contacto{color:var(--gold-light);font-size:13px;}
.capa{position:relative;height:min(40vh,340px);min-height:230px;background:var(--ink);overflow:hidden;display:flex;align-items:flex-end;}
#capaSlides{position:absolute;inset:0;}
.capa-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease;display:flex;align-items:flex-end;justify-content:flex-end;}
.capa-slide.ativo{opacity:1;}
.capa-fundo{position:absolute;inset:-30px;background-size:cover;background-position:center;filter:blur(22px) brightness(.5);}
.capa-foto{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;}
.capa-sombra{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,18,10,.55) 0%,rgba(20,18,10,0) 45%),linear-gradient(0deg,rgba(20,18,10,.45) 0%,rgba(20,18,10,0) 40%);}
.capa-slide-info{position:relative;z-index:1;color:#fff;font-size:13px;background:rgba(20,18,10,.55);padding:8px 16px;margin:0 0 20px 20px;border-radius:20px;}
.capa-slide-info u{color:var(--gold-light);}
.capa-texto{position:relative;padding:0 24px 40px;max-width:1180px;margin:0 auto;width:100%;pointer-events:none;}
.capa-titulo{font-family:Georgia,serif;font-size:clamp(34px,6vw,64px);letter-spacing:6px;color:#fff;font-weight:700;text-shadow:0 2px 12px rgba(0,0,0,.4);}
.capa-sub{color:var(--gold-light);font-size:16px;margin:6px 0 0;text-shadow:0 1px 8px rgba(0,0,0,.4);}
.capa-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.35);color:#fff;border:none;width:38px;height:38px;border-radius:50%;font-size:22px;cursor:pointer;z-index:2;}
.capa-nav:hover{background:rgba(0,0,0,.6);}
.capa-nav.prev{left:14px;} .capa-nav.next{right:14px;}
.servicos-bar{background:var(--ink);display:flex;justify-content:center;flex-wrap:wrap;gap:10px;padding:12px 16px;}
.servicos-bar a{background:var(--gold);color:var(--ink);font-weight:700;font-size:12.5px;padding:8px 16px;border-radius:20px;}
.servicos-bar a:hover{background:var(--gold-light);}
.container{max-width:1180px;margin:0 auto;padding:10px 16px 60px;}
h1{font-family:Georgia,serif;font-size:26px;margin:0 0 4px;}
.sub{color:var(--sub);font-size:14px;margin:0 0 20px;}
.filtros{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 8px;}
.filtros select,.filtros input,.controlos-lista select{border:1.5px solid var(--border);border-radius:8px;padding:8px 10px;font-size:13px;background:#fff;color:var(--ink);font-family:inherit;}
.barra-organizacao{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:10px;}
.controlos-lista{display:flex;gap:8px;}
.paginacao{display:flex;justify-content:center;gap:6px;margin-top:26px;flex-wrap:wrap;}
.paginacao button{border:1.5px solid var(--border);background:#fff;color:var(--ink);border-radius:8px;padding:7px 12px;font-size:13px;cursor:pointer;font-family:inherit;}
.paginacao button.ativo{background:var(--gold);border-color:var(--gold);color:#fff;font-weight:700;}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:18px;}
.cartao{background:var(--card);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 10px rgba(28,28,28,.07);transition:transform .2s ease,box-shadow .2s ease;}
.cartao:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(28,28,28,.14);}
.cartao .foto-caixa{position:relative;overflow:hidden;}
.cartao .foto{width:100%;aspect-ratio:1/1;object-fit:cover;background:var(--border);display:block;transition:transform .4s ease;}
.cartao:hover .foto{transform:scale(1.05);}
.cartao .etiquetas{position:absolute;top:10px;left:10px;display:flex;gap:5px;}
.cartao .etiquetas span{background:rgba(255,255,255,.88);backdrop-filter:blur(6px);color:var(--ink);font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:20px;letter-spacing:.2px;}
.cartao .etiquetas span.nat{background:rgba(28,28,28,.78);color:#fff;}
.cartao .cert{position:absolute;bottom:10px;right:10px;background:#3f9a4a;color:#fff;font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:6px;}
.cartao .corpo{padding:12px 14px 12px;display:flex;flex-direction:column;gap:4px;flex:1;}
.cartao .preco{font-family:Georgia,serif;font-size:19px;color:var(--gold);font-weight:700;}
.cartao .titulo{font-size:13.5px;font-weight:600;line-height:1.35;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.cartao .local{font-size:12px;color:var(--sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cartao .ref{font-size:11px;color:var(--muted);}
.cartao .meta{display:flex;gap:14px;margin-top:auto;padding-top:9px;border-top:1px solid var(--border);font-size:13px;color:var(--ink);font-weight:600;}
.cartao .meta .ic{display:inline-flex;align-items:center;gap:5px;}
.cartao .meta .ic b{font-size:18px;font-weight:400;line-height:1;}
.pill{display:inline-block;background:var(--ink);color:#fff;font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:20px;}
.vazio{padding:60px 0;text-align:center;color:var(--muted);}
.voltar{display:inline-block;margin-bottom:14px;font-size:13px;color:var(--gold);font-weight:600;}
.galeria{display:grid;grid-template-columns:2fr 1fr;gap:8px;margin-bottom:20px;border-radius:12px;overflow:hidden;}
.galeria img{width:100%;height:100%;object-fit:cover;background:var(--border);}
.galeria .col-mini{display:grid;grid-template-rows:1fr 1fr;gap:8px;}
.detalhe-topo{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:10px;margin-bottom:14px;}
.detalhe-preco{font-family:Georgia,serif;font-size:28px;color:var(--gold);font-weight:700;}
.grid-caract{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:18px 0;}
.grid-caract div{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:10px;font-size:12.5px;}
.grid-caract strong{display:block;font-size:15px;color:var(--ink);}
.descricao{white-space:pre-wrap;line-height:1.6;font-size:14.5px;}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0;}
.chips span{background:var(--gold-light);color:var(--ink);font-size:12px;font-weight:600;padding:5px 12px;border-radius:20px;}
.cta{margin-top:26px;padding:20px;background:var(--ink);border-radius:12px;color:#fff;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.cta a.botao{background:var(--gold);color:var(--ink);font-weight:700;padding:11px 22px;border-radius:8px;font-size:14px;}
.csec-title-lang{font-family:Georgia,serif;font-size:18px;font-weight:700;margin:20px 0 8px;padding-top:14px;border-top:1px solid var(--border);}
.form-contacto{display:flex;flex-direction:column;gap:10px;max-width:480px;}
.form-contacto input,.form-contacto textarea{border:1.5px solid var(--border);border-radius:8px;padding:10px 12px;font-size:13.5px;font-family:inherit;background:#fff;color:var(--ink);}
.form-contacto textarea{min-height:80px;resize:vertical;}
.botao-form{background:var(--gold);color:#fff;font-weight:700;border:none;padding:11px 22px;border-radius:8px;font-size:14px;cursor:pointer;align-self:flex-start;}
footer{text-align:center;padding:24px;color:var(--muted);font-size:12px;}
footer a{color:var(--gold);text-decoration:underline;}
@media (max-width:640px){ .galeria{grid-template-columns:1fr;} .galeria .col-mini{display:none;} }
/* Logótipo grande (pedido da Sandra 2026-09-23: "o meu símbolo e nome têm de
   ser muito maiores"). Escudo em alta resolução (assets/escudo.png, tirado do
   ficheiro original 1920px) + nome em letra caligráfica, como no logótipo. */
.logo-grande{display:flex;align-items:center;gap:14px;text-decoration:none;}
.logo-grande img{height:92px;width:auto;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5));}
.logo-grande span{font-family:'Great Vibes',Georgia,serif;font-size:44px;line-height:1;color:var(--gold-light);white-space:nowrap;}
@media (max-width:600px){
  .logo-grande img{height:62px;}
  .logo-grande span{font-size:30px;}
}
/* Página do imóvel — arranjo igual ao site atual casascomistoria.com (HCPro),
   pedido da Sandra 2026-09-23: fotos + dados à esquerda, agência + formulário
   à direita, separadores Descrição/Características/Áreas por baixo. */
.im-pagina{max-width:1100px;}
.im-cabecalho{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px;}
.im-cabecalho h1{font-family:"Segoe UI",Helvetica,Arial,sans-serif;font-weight:400;font-size:22px;color:var(--ink);margin:0;}
.im-preco{font-family:Georgia,serif;font-size:24px;color:var(--gold);font-weight:700;white-space:nowrap;}
.im-colunas{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start;}
.im-foto-principal{position:relative;background:#f1ede3;border-radius:6px;overflow:hidden;aspect-ratio:3/2;}
.im-foto-principal img{width:100%;height:100%;object-fit:contain;display:block;}
.im-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.4);color:#fff;border:none;width:36px;height:36px;border-radius:50%;font-size:22px;cursor:pointer;}
.im-nav.prev{left:10px;} .im-nav.next{right:10px;} .im-nav:hover{background:rgba(0,0,0,.65);}
.im-contador{position:absolute;right:10px;bottom:10px;background:rgba(0,0,0,.55);color:#fff;font-size:11px;padding:3px 9px;border-radius:12px;}
.im-miniaturas{display:flex;gap:6px;overflow-x:auto;padding:6px 0 2px;}
.im-miniaturas img{width:92px;height:64px;object-fit:cover;border-radius:4px;cursor:pointer;opacity:.65;border:2px solid transparent;flex:0 0 auto;}
.im-miniaturas img.ativa,.im-miniaturas img:hover{opacity:1;border-color:var(--gold);}
.im-factos{margin-top:14px;}
.im-grupo{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 16px;padding:14px 4px;border-top:1px solid var(--border);}
.im-grupo div{font-size:14px;color:var(--gold);font-weight:600;}
.im-grupo span{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-bottom:2px;}
.im-direita{position:sticky;top:14px;}
.im-partilhar{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;margin-bottom:12px;}
.im-partilhar a{font-size:11px;border:1px solid var(--border);border-radius:14px;padding:3px 10px;color:var(--sub);background:#fff;}
.im-partilhar a:hover{border-color:var(--gold);color:var(--gold);}
.im-bloco-titulo{font-size:12px;color:var(--muted);margin:14px 0 6px;}
.im-agencia{display:flex;gap:12px;align-items:center;font-size:12.5px;color:var(--sub);line-height:1.5;}
.im-agencia img{width:64px;height:auto;}
.im-agencia strong{color:var(--ink);}
.im-agencia a{color:var(--gold);}
.im-form{display:flex;flex-direction:column;gap:8px;}
.im-form input,.im-form textarea{border:1.5px solid var(--border);border-radius:6px;padding:9px 11px;font-size:13px;font-family:inherit;background:#fff;color:var(--ink);}
.im-form textarea{min-height:90px;resize:vertical;}
.im-enviar{background:var(--gold);color:#fff;font-weight:700;border:none;padding:10px;border-radius:6px;font-size:14px;cursor:pointer;}
.im-enviar:hover{background:#9c7224;}
.im-nota{font-size:11px;color:var(--muted);margin:2px 0 0;}
.im-nota a{color:var(--gold);}
.im-whatsapp{display:block;text-align:center;margin-top:12px;background:#25d366;color:#fff;font-weight:700;padding:10px;border-radius:6px;font-size:14px;}
.im-separadores{margin-top:30px;}
.im-tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);}
.im-tabs button{background:none;border:1px solid transparent;border-bottom:none;padding:8px 16px;font-size:13px;color:var(--sub);cursor:pointer;font-family:inherit;border-radius:6px 6px 0 0;}
.im-tabs button.ativo{border-color:var(--border);background:#fff;color:var(--gold);font-weight:600;margin-bottom:-1px;}
.im-tab-conteudo{background:#fff;border:1px solid var(--border);border-top:none;padding:16px 18px;border-radius:0 0 8px 8px;}
.im-tab-conteudo .im-grupo{border-top:none;padding:0;}
@media (max-width:860px){
  .im-colunas{grid-template-columns:1fr;}
  .im-direita{position:static;}
  .im-grupo{grid-template-columns:repeat(2,1fr);}
}
@media print{ header.topo,.im-partilhar,.im-form,.im-whatsapp,.voltar,footer,#secaoSemelhantes{display:none!important;} }

/* Rodapé igual ao do casascomistoria.pt (pedido da Sandra 2026-09-23):
   marca + Morada (2 lojas) + Contactos (móvel e fixo com a menção legal
   do tipo de chamada), faixa legal escura por baixo. */
footer.rodape{padding:0;text-align:left;color:var(--sub);font-size:13px;margin-top:30px;}
.rodape-topo{max-width:1180px;margin:0 auto;padding:28px 16px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:24px;align-items:start;border-top:1px solid var(--border);}
.rodape-marca{display:flex;align-items:center;gap:12px;}
.rodape-marca img{height:84px;}
.rodape-marca span{font-family:'Great Vibes',Georgia,serif;font-size:32px;color:var(--gold);}
.rodape-col h4{margin:0 0 10px;font-size:15px;color:var(--ink);}
.rodape-col p{margin:0 0 10px;line-height:1.5;}
.rodape-col a{color:var(--ink);text-decoration:none;font-size:14px;}
.rodape-col small{color:var(--muted);}
.rodape-legal{background:#2b2b2b;color:#eee;text-align:center;padding:18px 16px;font-size:12.5px;}
.rodape-legal p{margin:0 0 6px;}
.rodape-legal a{color:#eee;text-decoration:none;}
.rodape-legal a:hover{color:var(--gold-light);text-decoration:underline;}
header.topo .contacto a{color:inherit;}
@media (max-width:760px){ .rodape-topo{grid-template-columns:1fr;} }
@media print{ footer.rodape{display:none!important;} }
.im-agente{display:flex;gap:12px;align-items:flex-start;font-size:12.5px;color:var(--sub);line-height:1.5;}
.im-agente img{width:84px;height:104px;object-fit:cover;border-radius:6px;flex:0 0 auto;}
.im-agente strong{color:var(--ink);font-size:13.5px;}
.im-agente a{color:var(--gold);}
.im-media-tabs{display:flex;gap:2px;border-bottom:2px solid var(--gold);margin-bottom:6px;}
.im-media-tabs button{background:none;border:none;padding:6px 14px;font-size:12.5px;color:var(--sub);cursor:pointer;font-family:inherit;border-radius:4px 4px 0 0;}
.im-media-tabs button.ativo{background:var(--gold);color:#fff;font-weight:600;}
.im-video{position:relative;aspect-ratio:16/9;background:#000;border-radius:6px;overflow:hidden;margin-bottom:10px;}
.im-video iframe,.im-video video{position:absolute;inset:0;width:100%;height:100%;border:0;}
/* 18/10/2026: vídeo do TikTok é vertical */
.im-video.im-video-vert{aspect-ratio:9/16;max-width:340px;margin-left:auto;margin-right:auto;}
/* Capa com logótipo por cima da foto (Sandra 2026-09-23). */
header.topo.topo-fino{padding:7px 24px;justify-content:flex-end;min-height:0;}
header.topo.topo-fino .contacto{font-size:12.5px;}
.capa{height:min(66vh,580px);min-height:320px;}
.capa-logo{position:absolute;top:18px;left:24px;z-index:3;}
.capa-logo .logo-grande img{height:110px;filter:drop-shadow(0 3px 10px rgba(0,0,0,.6));}
.capa-logo .logo-grande span{font-size:50px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.7);}
@media (max-width:600px){
  header.topo.topo-fino{justify-content:center;text-align:center;}
  .capa{height:62vh;}
  .capa-logo{top:12px;left:12px;}
  .capa-logo .logo-grande img{height:70px;}
  .capa-logo .logo-grande span{font-size:32px;}
}
/* Botões de serviços por cima da foto, em vidro (Sandra 2026-09-23: "os
   botões dourados têm de ser algo moderno, até pode ser por cima da foto,
   tiras a barra preta e assim a foto do imóvel fica maior"). */
.capa{height:min(74vh,640px);}
.capa-servicos{position:absolute;top:26px;right:24px;z-index:3;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;max-width:60%;}
.capa-servicos a{background:rgba(20,18,10,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;border:1px solid rgba(233,217,173,.65);font-size:12.5px;font-weight:600;padding:8px 16px;border-radius:24px;letter-spacing:.2px;transition:background .2s,border-color .2s,transform .2s;}
.capa-servicos a:hover{background:var(--gold);border-color:var(--gold);transform:translateY(-2px);}
@media (max-width:860px){
  .capa-servicos{top:auto;bottom:14px;left:12px;right:12px;max-width:none;justify-content:center;gap:6px;}
  .capa-servicos a{font-size:11px;padding:6px 11px;}
  .capa-texto{padding-bottom:96px;}
  .capa-slide-info{display:none;}
}
/* Imóveis 3 a 3, como no site antigo (Sandra 2026-09-23: "faz os imóveis 3 a 3
   como eu tinha no meu site, fica mais moderno"). Foto 4:3 para os cartões
   mais largos não ficarem altíssimos. 2 por linha em tablet, 1 no telemóvel. */
.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.cartao .foto{aspect-ratio:4/3;}
.cartao .corpo{padding:14px 18px 14px;}
.cartao .preco{font-size:21px;}
.cartao .titulo{font-size:14.5px;}
@media (max-width:900px){ .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;} }
@media (max-width:560px){ .grid{grid-template-columns:1fr;} }
.filtros-limpar{border:1.5px solid var(--border);background:#fff;color:var(--sub);border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer;font-family:inherit;}
.filtros-limpar:hover{border-color:var(--gold);color:var(--gold);}
@media (max-width:560px){ .filtros select,.filtros input{flex:1 1 45%;width:auto!important;} }
/* Ficha condensada (Sandra 2026-09-23). */
.im-factos .im-grupo{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 14px;padding:10px 2px;}
.im-factos .im-grupo div{font-size:13px;}
.im-factos .im-grupo span{font-size:10.5px;margin-bottom:1px;}
.im-descricao-curta{margin-top:10px;padding-top:12px;border-top:1px solid var(--border);font-size:14px;line-height:1.6;color:var(--ink);}
.im-separadores{margin-top:18px;}
@media (max-width:560px){ .im-factos .im-grupo{grid-template-columns:repeat(2,minmax(0,1fr));} }
/* Seletor de língua PT/EN/FR/ES na barra de contactos. */
.linguas{display:inline-flex;gap:2px;margin-left:12px;vertical-align:middle;}
.linguas a{font-size:11px;font-weight:700;color:var(--gold-light);opacity:.6;padding:2px 6px;border-radius:4px;letter-spacing:.5px;}
.linguas a:hover{opacity:1;}
.linguas a.ativa{opacity:1;background:var(--gold);color:#fff;}
@media (max-width:600px){ .linguas{display:flex;justify-content:center;margin:6px 0 0;} }
.cartao .media-selos{position:absolute;bottom:10px;left:10px;display:flex;gap:5px;}
.cartao .media-selos span{background:rgba(28,28,28,.72);color:#fff;font-size:11px;font-weight:600;padding:2px 8px;border-radius:12px;backdrop-filter:blur(4px);}
.im-media-tabs button:disabled{opacity:.4;cursor:default;}

/* Fotos 360° (Sandra 2026-09-23). */
.im-360{width:100%;aspect-ratio:3/2;border-radius:6px;overflow:hidden;margin-bottom:8px;background:#111;}
/* ===== Menu principal (2026-09-24) =====
   EMPRESA · VENDA · ARRENDAMENTO · ESTUDO DE MERCADO · INVESTIMENTO ·
   INTERNATIONAL · BLOG · CRÉDITO HABITAÇÃO · CONTACTOS.
   Na página inicial fica POR CIMA da foto (sem barra preta extra, pedido da
   Sandra); nas outras páginas fica no cabeçalho escuro junto ao logótipo. */
.menu-principal{position:relative;}
.mn-lista{display:flex;flex-wrap:wrap;gap:2px;list-style:none;margin:0;padding:0;align-items:center;}
.mn-item{position:relative;}
.mn-link{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:#fff;font:600 12.5px "Segoe UI",Helvetica,Arial,sans-serif;letter-spacing:.4px;text-transform:uppercase;padding:9px 10px;cursor:pointer;border-radius:6px;white-space:nowrap;text-decoration:none;}
.mn-link:hover,.mn-ativo>.mn-link{color:var(--gold-light);background:rgba(255,255,255,.08);}
.mn-seta{font-size:9px;opacity:.8;}
.mn-sub{display:none;position:absolute;top:100%;left:0;min-width:230px;list-style:none;margin:0;padding:6px;background:#fff;border-radius:10px;box-shadow:0 12px 30px rgba(0,0,0,.18);z-index:50;}
.mn-sub a{display:block;padding:9px 12px;color:var(--ink);font-size:13px;border-radius:6px;text-decoration:none;}
.mn-sub a:hover{background:var(--cream);color:var(--gold);}
.mn-tem-sub:hover>.mn-sub,.mn-tem-sub.mn-sub-aberto>.mn-sub,.mn-tem-sub:focus-within>.mn-sub{display:block;}
.mn-abrir{display:none;background:rgba(20,18,10,.45);color:#fff;border:1px solid rgba(233,217,173,.6);border-radius:8px;font-size:20px;padding:4px 11px;cursor:pointer;}
/* página inicial: menu em vidro por cima da foto, serviços passam para baixo */
.capa-menu{position:absolute;top:22px;right:20px;z-index:4;max-width:calc(100% - 460px);}
.capa-menu .mn-lista{background:rgba(20,18,10,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(233,217,173,.35);border-radius:14px;padding:4px 6px;justify-content:flex-end;}
.capa-servicos{top:auto;bottom:74px;}
/* outras páginas: cabeçalho escuro com logótipo + menu */
.cabecalho-pagina{background:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px;flex-wrap:wrap;}
.logo-medio img{height:64px;} .logo-medio span{font-size:32px;color:var(--gold-light);}
header.topo .menu-principal{flex:1;display:flex;justify-content:center;}
/* páginas de conteúdo */
.pg-capa{height:min(42vh,380px);background:#222 center/cover no-repeat;}
.pg-conteudo{max-width:860px;padding-top:28px;}
.pg-conteudo h1{font-family:Georgia,serif;font-size:30px;margin:0 0 6px;}
.pg-subtitulo{font-size:16px;color:var(--gold);font-weight:600;letter-spacing:.5px;margin:0 0 18px;text-transform:uppercase;}
.pg-corpo{font-size:15.5px;line-height:1.7;color:#2b2b2b;}
.pg-corpo h2{font-family:Georgia,serif;font-size:22px;margin:26px 0 8px;}
.pg-corpo h3{font-size:17px;margin:20px 0 6px;}
.pg-corpo img{max-width:100%;border-radius:10px;margin:10px 0;}
.pg-corpo a{color:var(--gold);text-decoration:underline;}
.pg-aviso{margin-top:24px;padding:12px 14px;background:#fbf6ea;border-left:3px solid var(--gold);font-size:13px;color:var(--sub);border-radius:6px;}
.pg-form{margin-top:26px;max-width:520px;}
.blog-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;}
.blog-cartao{display:flex;flex-direction:column;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.07);text-decoration:none;color:var(--ink);}
.blog-cartao img{width:100%;aspect-ratio:16/9;object-fit:cover;}
.blog-cartao div{padding:12px 14px;display:flex;flex-direction:column;gap:4px;}
.blog-cartao span{font-size:13px;color:var(--sub);} .blog-cartao small{font-size:11px;color:var(--muted);}
@media (max-width:900px){
  .mn-abrir{display:inline-block;}
  .mn-lista{display:none;position:absolute;right:0;top:calc(100% + 6px);flex-direction:column;align-items:stretch;background:#1c1c1c;border-radius:12px;padding:8px;min-width:260px;z-index:60;box-shadow:0 12px 30px rgba(0,0,0,.35);}
  .menu-principal.mn-aberto .mn-lista{display:flex;}
  .capa-menu{max-width:none;}
  .capa-menu .mn-lista{background:#1c1c1c;backdrop-filter:none;}
  .mn-sub{position:static;box-shadow:none;background:rgba(255,255,255,.06);min-width:0;}
  .mn-sub a{color:#eee;}
  .mn-tem-sub:hover>.mn-sub{display:none;}
  .mn-tem-sub.mn-sub-aberto>.mn-sub{display:block;}
  header.topo .menu-principal{flex:0;order:3;}
}
@media (max-width:860px){ .capa-servicos{bottom:14px;} }
/* Nome do site como imagem (⚙️ Identidade no CRM, ex. em Vivaldi) — 2026-09-24 */
.logo-grande .logo-nome{height:60px;width:auto;filter:none;}
.capa-logo .logo-grande .logo-nome{height:80px;}
.logo-medio .logo-nome{height:48px;}
header.topo .logo-grande .logo-nome{height:50px;}
.rodape-marca .logo-nome{height:46px;}
@media (max-width:600px){ .capa-logo .logo-grande .logo-nome{height:46px;} .logo-medio .logo-nome{height:36px;} }

/* Menu sempre numa só linha (Sandra 2026-09-24: "o menu está só numa linha?"):
   nunca parte em 2 linhas; em ecrãs médios fica um pouco mais compacto e
   abaixo de 1180px passa ao botão ☰. */
@media (min-width:901px){ .mn-lista{flex-wrap:nowrap;} }
@media (min-width:901px) and (max-width:1100px){
  .mn-link{font-size:11.5px;padding:8px 7px;letter-spacing:.2px;}
  .capa-menu{max-width:calc(100% - 440px);}
}
/* Rodapé: "(chamada para rede …)" ao lado do número, numa só linha (Sandra 2026-09-24) */
.rodape-col p small{white-space:nowrap;font-size:11.5px;}
.rodape-col p{margin:0 0 6px;}
/* Janela "Resolução Alternativa de Litígios" (igual ao site antigo) */
.litigios-fundo{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;}
.litigios-caixa{background:#fff;border-radius:10px;width:min(820px,100%);max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.3);}
.litigios-topo{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--border);}
.litigios-topo h3{margin:0;font-weight:400;font-size:19px;color:var(--sub);}
.litigios-x{background:none;border:none;font-size:24px;cursor:pointer;color:var(--sub);line-height:1;}
.litigios-corpo{padding:14px 18px;overflow-y:auto;font-size:14px;color:#333;line-height:1.55;}
.litigios-corpo p{margin:0 0 14px;}
.litigios-corpo a{color:var(--gold);}
.litigios-rodape{padding:12px 18px;border-top:1px solid var(--border);text-align:right;}
.litigios-fechar{background:var(--gold);color:#fff;border:none;border-radius:6px;padding:9px 18px;font-size:14px;cursor:pointer;}
/* ===== Páginas de texto ("documentos") no estilo do site antigo =====
   Sandra 2026-09-24: "quero este tipo de letras e espaços condensados no
   site, sempre que entrares em documentos" — Roboto fina (300), cinzento,
   títulos de secção a 500, espaçamentos curtos em vez de espaços grandes.
   Aplica-se às páginas de conteúdo (Empresa, Contactos, International,
   Blog, Guias…) e às janelas legais (Resolução de Litígios). */
.pg-conteudo,.litigios-caixa{font-family:'Roboto',"Segoe UI",Helvetica,Arial,sans-serif;font-weight:300;color:#555;}
.pg-conteudo{padding-top:22px;}
.pg-conteudo h1{font-family:'Roboto',sans-serif;font-weight:300;font-size:26px;color:#666;margin:0 0 4px;letter-spacing:.2px;}
.pg-subtitulo{font-family:'Roboto',sans-serif;font-weight:500;font-size:14px;margin:0 0 14px;}
.pg-corpo{font-size:15px;line-height:1.6;color:#555;}
.pg-corpo p{margin:0 0 12px;}
.pg-corpo h2{font-family:'Roboto',sans-serif;font-weight:500;font-size:16px;color:#333;margin:18px 0 2px;}
.pg-corpo h3{font-family:'Roboto',sans-serif;font-weight:500;font-size:15px;color:#333;margin:14px 0 2px;}
.pg-corpo h2+p,.pg-corpo h3+p{margin-top:0;}
.pg-corpo ul{margin:0 0 12px;padding-left:18px;} .pg-corpo li{margin:0 0 2px;}
.pg-corpo strong{font-weight:500;color:#333;}
.pg-aviso{font-weight:300;}
.litigios-topo h3{font-family:'Roboto',sans-serif;font-weight:300;}
.litigios-corpo{font-size:15px;line-height:1.6;color:#555;}
.litigios-corpo p{margin:0 0 12px;}
.blog-cartao strong{font-family:'Roboto',sans-serif;font-weight:500;}
/* Rodapé compacto (Sandra 2026-09-24): lojas em 2 linhas (Torres Vedras por
   baixo), telefones mais pequenos com "(chamada para rede …)" logo por baixo —
   Morada e Contactos ocupam o mesmo espaço. Substitui a regra anterior. */
footer.rodape .rodape-col p{margin:0 0 9px;line-height:1.35;}
footer.rodape .rodape-col a{font-size:14px;}
footer.rodape .rodape-col p small{display:block;white-space:normal;font-size:11px;line-height:1.25;margin-top:1px;}
footer.rodape .rodape-col{min-width:0;overflow-wrap:anywhere;}
footer.rodape .rodape-col h4{margin:0 0 8px;}
/* Barra de pesquisa numa só linha (Sandra 2026-09-24) */
.filtros-linha{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;margin:14px 0 14px;}
.filtros-linha select,.filtros-linha input{min-width:0;padding:8px 9px;font-size:13px;}
.filtros-linha #fNatureza{flex:1.5 1 0;} .filtros-linha #fTipologia{flex:1 1 0;} .filtros-linha #fConcelho{flex:1.2 1 0;}
.filtros-linha #fPrecoMin,.filtros-linha #fPrecoMax{flex:1 1 0;} .filtros-linha #fRef{flex:1 1 0;} .filtros-linha #fConsultor{flex:1.2 1 0;} .filtros-linha #fTipo{flex:1.2 1 0;}
.filtros-linha .filtros-limpar{flex:0 0 auto;padding:8px 12px;}
.filtros-fim{display:flex;align-items:center;gap:10px;margin-left:6px;flex:0 0 auto;white-space:nowrap;}
.filtros-fim .sub{margin:0;font-size:13px;}
@media (max-width:1000px){
  .filtros-linha{flex-wrap:wrap;}
  .filtros-linha select,.filtros-linha input{flex:1 1 42%!important;}
  .filtros-fim{width:100%;justify-content:space-between;margin-left:0;}
}
/* Cartão: Ref. ao lado do preço + etiqueta Vista mar (Sandra 2026-09-24) */
.cartao .preco-linha{display:flex;justify-content:space-between;align-items:baseline;gap:8px;}
.cartao .preco-linha .preco{white-space:nowrap;}
.cartao .preco-linha .ref{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;}
.cartao .etiquetas span.vm{background:rgba(31,107,160,.88);color:#fff;}
/* Símbolos dos cartões: emoji (padrão) ou linha dourada/cinzenta — escolha no CRM (Identidade) */
.cartao .sv{display:none;width:20px;height:20px;flex:none;}
.cartao .etiquetas .sv{width:14px;height:14px;vertical-align:-2px;}
.cartao .etiquetas b.em{font-weight:400;}
body.simb-dourado .cartao .em, body.simb-cinzento .cartao .em{display:none;}
body.simb-dourado .cartao .sv, body.simb-cinzento .cartao .sv{display:inline-block;}
body.simb-dourado .cartao .meta .ic{color:var(--ink);}
body.simb-dourado .cartao .meta .sv{color:var(--gold);}
body.simb-cinzento .cartao .meta .sv{color:#6b6b66;}
body.simb-dourado .cartao .etiquetas span.vm{background:rgba(182,134,44,.92);}
body.simb-cinzento .cartao .etiquetas span.vm{background:rgba(70,70,66,.85);}
/* Agência + Agente equilibrados (Sandra 2026-09-24: "muito largo"): mesma
   coluna de imagem (84px) nos dois blocos, texto alinhado pelo topo e a nota
   "(chamada para rede …)" numa linha própria, pequena, por baixo do número. */
.im-agencia,.im-agente{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;align-items:start;font-size:12.5px;line-height:1.45;}
.im-agencia img{width:84px;height:auto;margin-top:2px;}
.im-agencia strong,.im-agente strong{font-size:13.5px;}
.im-nota-linha{display:block;font-size:10.5px;color:var(--muted);line-height:1.25;margin-bottom:3px;}
/* Topos e fundos mais baixos (Sandra 2026-09-24: "reduz os topos e os fundos").
   Só as faixas pretas/rodapé — a capa com foto da página inicial não muda. */
header.topo.topo-fino{padding:4px 24px;}
header.topo.topo-fino .contacto{font-size:12px;}
.cabecalho-pagina{padding:5px 24px;}
.cabecalho-pagina .logo-medio img{height:52px;}
.cabecalho-pagina .logo-medio .logo-nome{height:38px;}
footer.rodape{margin-top:20px;}
.rodape-topo{padding:16px 16px;gap:18px;}
.rodape-marca img{height:62px;}
.rodape-marca .logo-nome{height:36px;}
footer.rodape .rodape-col h4{margin:0 0 5px;font-size:14px;}
footer.rodape .rodape-col p{margin:0 0 6px;}
.rodape-legal{padding:9px 16px;font-size:12px;}
.rodape-legal p{margin:0 0 3px;}
/* Títulos dos cartões (Sandra 2026-09-24: "letra grande, ler o título todo e
   ficar enquadrado"): Roboto Condensed (mesma família das páginas de
   documentos) cabe ~35% mais texto por linha; até 3 linhas e altura fixa de
   3 linhas, para todos os cartões ficarem alinhados. */
.cartao .titulo{font-family:'Roboto Condensed','Roboto',Arial,sans-serif;font-size:14px;font-weight:500;line-height:1.3;-webkit-line-clamp:3;min-height:calc(3 * 1.3em);letter-spacing:.1px;}
/* Escudo + nome (Vivaldi) na capa: entre 1181 e 1520px o menu numa linha não
   deixa espaço ao lado — o logótipo desce para baixo do menu em vez de ficar
   tapado (2026-09-24). Acima de 1520 fica ao lado; abaixo de 1181 há ☰. */
/* 25/09: menu com 4 opções já cabe ao lado do logótipo — regra antiga desligada */
/* Rodapé preto — escolha no CRM (⚙️ Identidade → Rodapé), 2026-09-24 */
footer.rodape.rodape-escuro{background:var(--ink);color:#c9c4b5;margin-top:24px;}
footer.rodape.rodape-escuro .rodape-topo{border-top:none;}
footer.rodape.rodape-escuro .rodape-col h4{color:var(--gold-light);}
footer.rodape.rodape-escuro .rodape-col a{color:#f1ede2;}
footer.rodape.rodape-escuro .rodape-col small,footer.rodape.rodape-escuro .rodape-col p small{color:#9a958a;}
footer.rodape.rodape-escuro .rodape-marca span{color:var(--gold-light);}
footer.rodape.rodape-escuro .rodape-legal{background:#111;border-top:1px solid rgba(233,217,173,.18);}
/* Página Equipa (2026-09-24) — cartões iguais ao bloco "Agente" do imóvel */
.equipa-lista{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:8px;}
.equipa-cartao{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:start;background:#fff;border-radius:12px;padding:14px;box-shadow:0 2px 10px rgba(0,0,0,.07);font-size:13px;line-height:1.45;}
.equipa-cartao img,.equipa-sem-foto{width:96px;height:120px;object-fit:cover;border-radius:8px;}
.equipa-sem-foto{display:flex;align-items:center;justify-content:center;background:var(--gold-light);color:var(--gold);font-size:40px;font-family:Georgia,serif;}
.equipa-info strong{display:block;font-size:15px;color:var(--ink);margin-bottom:2px;}
.equipa-cargo{display:block;color:var(--muted);font-size:12px;margin-bottom:6px;}
.equipa-info a{display:block;color:var(--gold);text-decoration:none;overflow-wrap:anywhere;}
/* Serviços da capa — Sandra escolheu D1 e depois o vidro ESCURO (D2) (2026-09-24),
   sem símbolos, estreito e baixo, no canto inferior direito (equilibra com
   "IMÓVEIS" à esquerda). Substitui os 4 botões de vidro escuro. */
.capa-servicos.capa-vidro{top:auto;left:auto;bottom:70px;right:24px;max-width:none;width:min(600px,calc(100% - 48px));display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  background:rgba(20,18,10,.40);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(233,217,173,.40);border-radius:12px;overflow:hidden;box-shadow:0 6px 20px rgba(0,0,0,.18);}
.capa-vidro .cv-item{padding:10px 8px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:7px;text-align:center;}
.capa-vidro .cv-item + .cv-item{border-left:1px solid rgba(233,217,173,.25);}
.capa-vidro .cv-item span{font-family:Roboto,Arial,sans-serif;font-weight:400;font-size:12.5px;line-height:1.25;color:#fff;text-shadow:0 1px 5px rgba(0,0,0,.45);}
.capa-servicos.capa-vidro a{background:var(--gold);color:#fff;border:none;backdrop-filter:none;-webkit-backdrop-filter:none;font-size:11.5px;font-weight:500;padding:5px 11px;border-radius:5px;white-space:nowrap;letter-spacing:0;}
.capa-servicos.capa-vidro a:hover{background:#9c7123;border:none;transform:translateY(-1px);}
@media (max-width:860px){
  .capa-servicos.capa-vidro{left:12px;right:12px;bottom:12px;width:auto;grid-template-columns:repeat(2,1fr);}
  .capa-vidro .cv-item:nth-child(3){border-left:none;}
  .capa-vidro .cv-item:nth-child(n+3){border-top:1px solid rgba(233,217,173,.25);}
  .capa-texto{padding-bottom:160px;}
}

/* ---- Separadores por tipologia + carrossel (Sandra 2026-09-24, inspirado nos
   "Destacados" do site antigo): cartões mais estreitos (310px) e com mais ar
   entre eles (34px), setas douradas de lado, pontos por baixo. ---- */
.separadores{display:flex;justify-content:center;flex-wrap:wrap;gap:6px;margin:6px 0 18px;}
.separadores button{border:1px solid var(--border);background:#fff;color:var(--ink);font:500 13px Roboto,Arial,sans-serif;padding:6px 14px;border-radius:20px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:.2s;}
.separadores button small{font-size:10.5px;color:var(--muted);font-weight:400;}
.separadores button:hover{border-color:var(--gold);}
.separadores button.ativo{background:var(--gold);border-color:var(--gold);color:#fff;}
.separadores button.ativo small{color:rgba(255,255,255,.85);}
.carrossel{position:relative;display:flex;align-items:center;gap:10px;max-width:1120px;margin:0 auto;}
.carril{flex:1;min-width:0;display:flex;gap:34px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 4px 14px;scrollbar-width:none;}
.carril::-webkit-scrollbar{display:none;}
.carril .cartao{flex:0 0 calc((100% - 68px) / 3);max-width:330px;scroll-snap-align:start;}
.carril .vazio{flex:1;}
.car-seta{flex:none;width:44px;height:44px;border:none;background:none;color:var(--gold);font-size:54px;line-height:1;cursor:pointer;padding:0 0 6px;transition:.2s;}
.car-seta:hover{transform:scale(1.12);}
.car-seta:disabled{opacity:.2;cursor:default;transform:none;}
.car-pontos{display:flex;justify-content:center;gap:8px;margin:6px 0 10px;}
.car-pontos button{width:12px;height:12px;border-radius:50%;border:1.5px solid var(--gold);background:transparent;padding:0;cursor:pointer;}
.car-pontos button.ativo{background:var(--gold);}
@media (min-width:1100px){ .carril .cartao{flex-basis:310px;} }
@media (max-width:900px){ .carril{gap:20px;} .carril .cartao{flex-basis:calc((100% - 20px) / 2);} }
@media (max-width:560px){ .carril .cartao{flex-basis:86%;} .car-seta{display:none;} }
/* 17/10 (Sandra): foto pequena do consultor no cartão — redonda, no canto entre a foto e o texto */
.cartao .corpo{position:relative;}
/* 17/10 maior (Sandra: "coloca a imagem maior"): 58 px; nos vendidos podem ser vários (sobrepostos) */
.cartao-consultores{position:absolute;top:-38px;right:62px;display:flex;flex-direction:row-reverse;z-index:2;}
.cartao-consultores img{width:58px;height:58px;border-radius:50%;object-fit:cover;object-position:center 20%;border:2.5px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.28);background:#fff;}
.cartao-consultores img + img{margin-right:-16px;}
@media (max-width:560px){ .cartao-consultores img{width:48px;height:48px;} .cartao-consultores{top:-32px;} }
/* 17/10 (Sandra): quadrado "Ver 3 · 12 · 24" — 3 = carrossel; 12/24 = grelha, 3 por linha, com páginas */
.separadores .ver-grupo{display:inline-flex;align-items:center;gap:3px;border:1px solid var(--border);border-radius:20px;padding:2px 3px 2px 10px;font:500 12px Roboto,Arial,sans-serif;color:var(--muted);background:#fff;}
.separadores .ver-grupo button{padding:3px 9px;min-width:30px;justify-content:center;}
.carrossel.modo-grelha .car-seta{display:none;}
.carrossel.modo-grelha .carril{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px;overflow:visible;scroll-snap-type:none;}
.carrossel.modo-grelha .carril .cartao{max-width:none;}
@media (max-width:900px){ .carrossel.modo-grelha .carril{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;} }
@media (max-width:560px){ .carrossel.modo-grelha .carril{grid-template-columns:1fr;} }

/* ---- Barra de pesquisa em janela flutuante preta, meio sobre a foto
   (Sandra 2026-09-24, como a caixa de pesquisa do site antigo). ---- */
.filtros.filtros-flutuante{position:relative;z-index:5;margin:-34px auto 22px;max-width:1120px;background:rgba(20,18,10,.92);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(233,217,173,.30);border-radius:14px;padding:12px 14px;
  box-shadow:0 14px 32px rgba(0,0,0,.25);flex-wrap:nowrap;}
.filtros-flutuante select,.filtros-flutuante input{background:#fff;border-color:transparent;}
.filtros-flutuante .filtros-limpar{background:transparent;color:var(--gold-light);border:1px solid rgba(233,217,173,.55);}
.filtros-flutuante .filtros-limpar:hover{background:var(--gold);color:#fff;border-color:var(--gold);}
.filtros-flutuante .filtros-fim:empty,.filtros-flutuante #contagem:empty{display:none;}
.filtros-flutuante #contagem{color:var(--gold-light);}
/* a foto da capa dá lugar à janela: título, serviços e legenda sobem um pouco */
.capa-texto{padding-bottom:58px;}
.capa-slide-info{margin-bottom:46px;}
.capa-servicos.capa-vidro{bottom:92px;}
@media (max-width:1100px){ .filtros.filtros-flutuante{flex-wrap:wrap;margin:-24px 12px 18px;} }
@media (max-width:860px){ .capa-texto{padding-bottom:170px;} .capa-servicos.capa-vidro{bottom:36px;} }
/* ---- Serviços (vidro escuro D2) COLADOS à janela preta da pesquisa — um só
   bloco centrado, mesma largura (Sandra 2026-09-24: "tudo equilibrado").
   Serviços em cima (cantos de cima redondos), pesquisa em baixo. ---- */
.capa-servicos.capa-vidro{left:50%;right:auto;transform:translateX(-50%);bottom:34px;width:min(1120px,calc(100% - 32px));
  border-radius:14px 14px 0 0;border-bottom:none;box-shadow:none;background:rgba(20,18,10,.55);}
.capa-vidro .cv-item{flex-direction:row;justify-content:center;gap:12px;padding:11px 10px;}
.capa-vidro .cv-item span{font-size:13px;text-align:right;}
.filtros.filtros-flutuante{border-radius:0 0 14px 14px;border-top:1px solid rgba(233,217,173,.22);}
.capa-texto{padding-bottom:128px;}
.capa-slide-info{margin-bottom:128px;}
@media (max-width:1100px){ .capa-vidro .cv-item{flex-direction:column;gap:6px;} .capa-vidro .cv-item span{text-align:center;} .capa-texto{padding-bottom:150px;} .capa-slide-info{margin-bottom:150px;} }
@media (max-width:1100px){ .capa-servicos.capa-vidro{bottom:24px;width:calc(100% - 24px);} }
@media (max-width:860px){ .capa-texto{padding-bottom:196px;} .capa-slide-info{display:none;} }
/* acerto: o .container tem 10px de padding em cima — a janela sobe esses 10px
   para ficar colada aos serviços; em ecrã estreito as duas com a mesma largura. */
.filtros.filtros-flutuante{margin:-44px auto 22px;}
@media (max-width:1100px){ .filtros.filtros-flutuante{margin:-34px 0 18px;} .capa-servicos.capa-vidro{width:calc(100% - 32px);} }
/* Bloco mais em baixo (Sandra 2026-09-24: "apanha só um bocado da foto"):
   só a faixa dos serviços fica sobre a foto, encostada à base; a janela preta
   da pesquisa fica toda por baixo da foto, colada aos serviços. */
.capa-servicos.capa-vidro{bottom:0;}
.filtros.filtros-flutuante{margin:-10px auto 22px;}
.capa-texto{padding-bottom:66px;}
.capa-slide-info{margin-bottom:66px;}
@media (max-width:1100px){ .capa-servicos.capa-vidro{bottom:0;} .filtros.filtros-flutuante{margin:-10px 0 18px;} .capa-texto{padding-bottom:96px;} .capa-slide-info{margin-bottom:96px;} }
@media (max-width:860px){ .capa-texto{padding-bottom:150px;} }
@media (max-width:860px){ .capa-texto{padding-bottom:178px;} }

/* Reservados / Vendidos (Sandra 2026-09-24): separadores no fim, com um traço
   a separar; nos cartões uma fita na foto; vendidos sem preço e foto a cinzento suave. */
.separadores .sep-divisor{width:1px;align-self:stretch;background:var(--border);margin:2px 6px;}
.foto-caixa{position:relative;}
.fita-estado{position:absolute;z-index:2;top:50%;left:0;right:0;transform:translateY(-50%);text-align:center;background:rgba(182,134,44,.9);color:#fff;
  font:600 14px Roboto,Arial,sans-serif;letter-spacing:3px;text-transform:uppercase;padding:7px 0;}
.cartao-vendido .fita-estado{background:rgba(28,28,28,.85);color:var(--gold-light);}
.cartao-vendido .foto{filter:grayscale(.55);}
.cartao-vendido .preco{color:var(--muted);letter-spacing:1px;}

/* Bandeiras junto a PT/EN/FR/ES (2026-09-24) */
.linguas a,#seletorLingua a{display:inline-flex;align-items:center;gap:4px;}
.bandeira{display:inline-flex;width:18px;height:12px;border-radius:2px;overflow:hidden;box-shadow:0 0 0 1px rgba(255,255,255,.25);flex:none;}
.bandeira svg{width:100%;height:100%;display:block;}
/* Capa de ponta a ponta (Sandra 2026-09-24); retrato mantém foto inteira */
.capa-foto{object-fit:cover;object-position:center 55%;}
.capa-foto.retrato{object-fit:contain;}

/* Símbolos de contacto (telemóvel / fixo / email) — linha dourada, 2026-09-24 */
.ic-ct{width:14px;height:14px;vertical-align:-2px;margin-right:4px;color:var(--gold);flex:none;}
header.topo .contacto a{display:inline-flex;align-items:center;margin-right:12px;}
header.topo .contacto .ic-ct{color:var(--gold-light);}
.im-agente a .ic-ct,.equipa-info a .ic-ct{width:15px;height:15px;}

/* Escolha "Imóveis | A nossa loja" na capa + vídeo (Sandra 2026-09-24) */
.capa-modo{position:absolute;z-index:4;left:50%;transform:translateX(-50%);top:26px;display:flex;gap:0;background:rgba(20,18,10,.45);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(233,217,173,.45);border-radius:22px;padding:3px;}
.capa-modo button{border:none;background:transparent;color:#fff;font:500 12.5px Roboto,Arial,sans-serif;padding:6px 14px;border-radius:18px;cursor:pointer;white-space:nowrap;}
.capa-modo button.ativo{background:var(--gold);}
.capa-video{position:absolute;inset:0;z-index:2;background:#000;}
.capa-video video,.capa-video iframe{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0;}
.capa-som{position:absolute;right:18px;top:26px;z-index:3;background:rgba(20,18,10,.55);color:#fff;border:1px solid rgba(233,217,173,.5);border-radius:18px;padding:5px 12px;font-size:12px;cursor:pointer;}
.capa-som.ligado{background:var(--gold);}
.capa.modo-loja .capa-texto,.capa.modo-loja .capa-nav{display:none;}
@media (max-width:1180px){ .capa-modo{top:auto;bottom:calc(100% - 110px);} }
@media (max-width:600px){ .capa-modo{top:92px;bottom:auto;} .capa-modo button{font-size:11.5px;padding:5px 11px;} }
/* Foto da capa "dinâmica" (Sandra 2026-09-24): aproximação e deslize lentos
   (efeito Ken Burns) enquanto cada foto está visível; alterna o sentido.
   Quem tem "reduzir movimento" ligado no aparelho vê a foto parada. */
@keyframes capaKB1{from{transform:scale(1) translate(0,0);}to{transform:scale(1.09) translate(-1.5%,-1%);}}
@keyframes capaKB2{from{transform:scale(1.09) translate(1.5%,-1%);}to{transform:scale(1) translate(0,0);}}
.capa-slide .capa-foto{will-change:transform;}
.capa-slide.ativo .capa-foto{animation:capaKB1 8s ease-out both;}
.capa-slide.ativo:nth-child(even) .capa-foto{animation-name:capaKB2;}
.capa-slide.ativo .capa-foto.retrato{animation:none;}
@media (prefers-reduced-motion:reduce){ .capa-slide.ativo .capa-foto{animation:none;} }
/* Imóveis | A nossa loja: por baixo do menu, à direita (não sobrepõe o menu) */
.capa-modo{left:auto;right:20px;transform:none;top:86px;}
@media (max-width:1180px){ .capa-modo{top:78px;bottom:auto;right:16px;} }
@media (max-width:600px){ .capa-modo{top:auto;bottom:auto;top:72px;right:12px;} }
.capa-som{top:auto;bottom:130px;}

/* Imóveis | A nossa loja na barra preta de cima, à esquerda (2026-09-24) */
header.topo.topo-fino{justify-content:space-between;}
.topo-esq:empty{display:none;}
header.topo.topo-fino .topo-esq{margin-right:auto;}
.topo-esq .capa-modo{position:static;transform:none;padding:2px;background:rgba(255,255,255,.06);border:1px solid rgba(233,217,173,.35);border-radius:16px;backdrop-filter:none;-webkit-backdrop-filter:none;}
.topo-esq .capa-modo button{font-size:11.5px;padding:3px 11px;border-radius:13px;color:var(--gold-light);}
.topo-esq .capa-modo button.ativo{color:#fff;}
.carrossel{margin-bottom:18px;}
@media (max-width:600px){ header.topo.topo-fino{flex-wrap:wrap;justify-content:center;gap:4px;} header.topo.topo-fino .topo-esq{margin:0 auto;} }

/* Fita "Em Carteira" (em breve) — tom azul-acinzentado, diferente de Reservado/Vendido */
.cartao-carteira .fita-estado{background:rgba(52,78,99,.88);color:#fff;}
/* separadores mais compactos para caberem numa linha (24/09) */
.separadores{gap:5px;}
.separadores button{padding:5px 11px;font-size:12.5px;gap:5px;}
.separadores .sep-divisor{margin:2px 3px;}
/* "Em Carteira" com fundo dourado (Sandra 2026-09-24); escolhido fica preto */
.separadores button[data-sep="carteira"]{background:var(--gold);border-color:var(--gold);color:#fff;}
.separadores button[data-sep="carteira"] small{color:rgba(255,255,255,.85);}
.separadores button[data-sep="carteira"].ativo{background:var(--ink);border-color:var(--ink);}
/* Revisão 24/09: páginas sem "Imóveis | A nossa loja" (imóvel, Equipa, Empresa…)
   — contactos + línguas juntos à direita, como antes; bandeiras sem espaço a mais. */
header.topo.topo-fino .contacto{margin-left:auto;display:flex;align-items:center;flex-wrap:wrap;gap:2px;}
header.topo.topo-fino .contacto .linguas{display:inline-flex;gap:8px;margin-left:10px;}
header.topo.topo-fino .contacto .linguas a{margin-right:0;}
/* Equipa: telemóvel e email numa linha cada, sem partir o email a meio */
.equipa-info a{display:flex;align-items:center;gap:2px;overflow-wrap:normal;word-break:normal;white-space:nowrap;font-size:12.5px;}
.equipa-cartao{grid-template-columns:88px minmax(0,1fr);}
.equipa-lista{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));}
/* Rodapé mais fino e elegante (Sandra 2026-09-24: "está muito grosso,
   tem de estar mais elegante e talvez reduzido"). */
footer.rodape{margin-top:18px;}
.rodape-topo{padding:14px 16px 10px;gap:28px;align-items:center;grid-template-columns:auto 1fr 1fr;}
.rodape-marca img,.rodape-marca .logo-simbolo{height:46px !important;}
.rodape-marca .logo-nome{height:28px !important;}
.rodape-marca span{font-size:24px;}
footer.rodape .rodape-col h4{font-size:10.5px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;margin:0 0 4px;opacity:.85;}
footer.rodape .rodape-col p{margin:0 0 3px;font-size:12px;font-weight:300;line-height:1.35;}
footer.rodape .rodape-col a{font-size:12.5px;font-weight:400;}
footer.rodape .rodape-col p small{font-size:10px;font-weight:300;margin-top:0;}
footer.rodape .rodape-col b{font-weight:500;}
.rodape-legal{padding:7px 16px;font-size:11px;font-weight:300;}
.rodape-legal p{margin:0 0 2px;}
footer.rodape.rodape-escuro .rodape-legal{border-top:1px solid rgba(233,217,173,.12);}
@media (max-width:760px){ .rodape-topo{grid-template-columns:1fr;gap:10px;} }
/* CE na linha dos símbolos (2026-09-24). 17/10 (Sandra: "tira a cor, coloca dourado em todas"):
   todas as classes (A+ … F) com a mesma etiqueta dourada — já não há cor por classe. */
.cartao .meta .ic-ce{margin-left:auto;}
.ce-tag{display:inline-block;min-width:24px;text-align:center;font:700 11px Roboto,Arial,sans-serif;color:#fff;padding:3px 6px;border-radius:4px;background:var(--gold);letter-spacing:.3px;}
/* Rodapé: logótipo ao meio com o nome por baixo (Sandra 2026-09-24);
   Morada à esquerda, Contactos à direita — simétrico. */
.rodape-topo{grid-template-columns:1fr auto 1fr;}
.rodape-topo .rodape-marca{order:2;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;}
.rodape-topo .rodape-col:nth-of-type(2){order:1;}
.rodape-topo .rodape-col:last-child{order:3;text-align:right;}
.rodape-marca img,.rodape-marca .logo-simbolo{height:52px !important;}
.rodape-marca .logo-nome{height:26px !important;}
.rodape-marca span{font-size:22px;}
@media (max-width:760px){ .rodape-topo .rodape-marca{order:0;} .rodape-topo .rodape-col:last-child{text-align:left;} }
/* Capa acompanha a largura do ecrã (Sandra 2026-09-25: "a casa vermelha no site
   publicado está cortada"). Com altura fixa (640px) um ecrã de 1920px ficava 3:1 e
   cortava ~30% das fotos (as fotos do CRM são ~1,8:1 a 2,1:1). Agora a altura é
   largura/2,25 (máx. a altura do ecrã menos a barra), corte típico < 10%. */
@media (min-width:861px){ .capa{height:clamp(420px, calc(100vw / 2.25), calc(100vh - 90px));} }
.capa-foto{object-position:center 50%;}

/* Seletor de línguas: só a bandeira atual ▾ e lista ao carregar (2026-09-25) */
.ling-menu{position:relative;display:inline-block;margin-left:10px;}
.ling-menu summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid rgba(233,217,173,.35);border-radius:6px;}
.ling-menu summary::-webkit-details-marker{display:none;}
.ling-menu .bandeira{width:20px;height:14px;}
.ling-seta{font-size:10px;color:var(--gold-light);}
.ling-lista{position:absolute;right:0;top:calc(100% + 6px);z-index:80;background:#141414;border:1px solid rgba(233,217,173,.25);border-radius:8px;padding:6px;min-width:160px;box-shadow:0 12px 26px rgba(0,0,0,.35);display:flex;flex-direction:column;gap:2px;}
.ling-lista a{display:flex !important;align-items:center;gap:8px;color:#f1ede2 !important;font-size:13px;font-weight:400;padding:6px 8px;border-radius:5px;opacity:1 !important;background:none !important;letter-spacing:0;margin:0 !important;}
.ling-lista a:hover{background:rgba(233,217,173,.12) !important;}
.ling-lista a.ativa{color:var(--gold-light) !important;font-weight:600;}

/* ---- "As nossas ferramentas" / Divulgação Premium (Sandra 2026-09-25) ---- */
.ferramentas{background:radial-gradient(ellipse at 50% 0%,#2a2418 0%,#141414 60%);color:#f1ede2;padding:44px 16px 40px;margin-top:10px;text-align:center;}
.fer-in{max-width:1080px;margin:0 auto;}
.fer-pergunta{margin:0;font:600 13px Roboto,Arial,sans-serif;letter-spacing:3px;text-transform:uppercase;color:var(--gold-light);}
.fer-titulo{margin:6px 0 18px;font:400 clamp(24px,3vw,34px)/1.2 Georgia,'Times New Roman',serif;color:#fff;}
.fer-faixa{background:linear-gradient(90deg,#8a6420,#e0bf6c 30%,#f3dc98 50%,#e0bf6c 70%,#8a6420);padding:12px 16px;margin:0 -16px;box-shadow:0 6px 18px rgba(0,0,0,.35);}
.fer-faixa span{font:700 clamp(18px,2.4vw,26px) Roboto,Arial,sans-serif;color:#1c1c1c;letter-spacing:.3px;}
.fer-sub{display:flex;align-items:center;gap:16px;margin:28px 0 22px;}
.fer-sub::before,.fer-sub::after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--gold));}
.fer-sub::after{background:linear-gradient(90deg,var(--gold),transparent);}
.fer-sub span{font:600 13px Roboto,Arial,sans-serif;letter-spacing:3px;text-transform:uppercase;color:var(--gold-light);border:1px solid rgba(233,217,173,.5);border-radius:6px;padding:6px 16px;}
.fer-grelha{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;}
.fer-ic{height:78px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--gold);}
.fer-ic svg{width:70px;height:70px;}
.fer-ic2 svg:last-child{width:52px;height:52px;}
.fer-item h3{margin:10px 0 6px;font:700 14px Roboto,Arial,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold-light);}
.fer-item p{margin:0 auto;max-width:280px;font:300 14px/1.45 Roboto,Arial,sans-serif;color:#d9d4c7;}
.fer-botao{display:inline-block;margin-top:28px;background:var(--gold);color:#fff;text-decoration:none;font:500 14px Roboto,Arial,sans-serif;padding:10px 22px;border-radius:6px;transition:.2s;}
.fer-botao:hover{background:#9c7123;transform:translateY(-2px);}
.ferramentas + footer.rodape{margin-top:0;}
@media (max-width:760px){ .fer-grelha{grid-template-columns:1fr;gap:22px;} .ferramentas{padding:34px 16px;} }
.ferramentas{border-bottom:1px solid rgba(233,217,173,.22);} .fer-ic svg{width:78px;height:78px;} .fer-ic2 svg:last-child{width:58px;height:58px;}
/* "As nossas ferramentas" mais fina (Sandra 2026-09-25: "está muito grosso") */
.ferramentas{padding:28px 16px 26px;}
.fer-pergunta{font-size:11px;letter-spacing:2.5px;font-weight:500;}
.fer-titulo{font-size:clamp(20px,2.3vw,26px);margin:4px 0 12px;font-weight:400;}
.fer-faixa{padding:7px 16px;margin:0 auto;max-width:720px;border-radius:4px;box-shadow:0 4px 12px rgba(0,0,0,.3);}
.fer-faixa span{font-size:clamp(14px,1.6vw,17px);font-weight:500;letter-spacing:.5px;}
.fer-sub{margin:18px auto 14px;max-width:820px;}
.fer-sub span{font-size:10.5px;letter-spacing:2.5px;padding:4px 12px;font-weight:500;}
.fer-grelha{gap:22px;max-width:900px;margin:0 auto;}
.fer-ic{height:52px;}
.fer-ic svg{width:48px;height:48px;stroke-width:1.8;}
.fer-ic2 svg:last-child{width:38px;height:38px;}
.fer-item h3{font-size:11.5px;font-weight:600;letter-spacing:1.6px;margin:6px 0 4px;}
.fer-item p{font-size:12.5px;line-height:1.4;max-width:250px;}
.fer-botao{margin-top:18px;font-size:12.5px;padding:7px 16px;}
/* Ferramentas numa só faixa (Sandra 2026-09-25: "super grosso, 3 faixas") */
.ferramentas{padding:22px 16px;text-align:left;}
.fer-linha{max-width:1180px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,2fr);gap:34px;align-items:center;}
.fer-esq .fer-pergunta{font-size:10.5px;letter-spacing:2.5px;margin:0;}
.fer-esq .fer-titulo{font-size:clamp(18px,1.8vw,22px);margin:4px 0 4px;line-height:1.25;}
.fer-missao{margin:0 0 12px;font:italic 400 14px Georgia,serif;color:var(--gold);}
.fer-esq .fer-botao{margin-top:0;font-size:12px;padding:6px 14px;}
.fer-linha .fer-grelha{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:none;margin:0;}
.fer-linha .fer-item{display:flex;gap:12px;align-items:flex-start;text-align:left;border-left:1px solid rgba(233,217,173,.18);padding-left:16px;}
.fer-linha .fer-ic{height:auto;flex:none;}
.fer-linha .fer-ic svg{width:38px;height:38px;}
.fer-linha .fer-item h3{margin:0 0 3px;font-size:11px;}
.fer-linha .fer-item p{font-size:12px;max-width:none;margin:0;}
@media (max-width:980px){ .fer-linha{grid-template-columns:1fr;gap:18px;} }
@media (max-width:640px){ .fer-linha .fer-grelha{grid-template-columns:1fr;gap:12px;} }
/* Rodapé sem logótipo, com foto de cada loja (Sandra 2026-09-25) */
footer.rodape .rodape-marca{display:none !important;}
.rodape-topo{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) !important;padding:12px 16px 8px;}
.rodape-topo .rodape-col:nth-of-type(2){order:1;}
.rodape-topo .rodape-col:last-child{order:2;}
.rodape-lojas{display:flex;gap:22px;flex-wrap:wrap;}
.rodape-loja{display:flex;gap:10px;align-items:center;}
.rodape-loja img{width:64px;height:48px;object-fit:cover;border-radius:4px;border:1px solid rgba(233,217,173,.3);flex:none;}
footer.rodape .rodape-loja p{margin:0;font-size:11.5px;line-height:1.35;}
.rodape-loja p b{display:block;font-weight:500;font-size:12px;color:var(--gold-light);}
@media (max-width:760px){ .rodape-topo{grid-template-columns:1fr !important;} .rodape-topo .rodape-col:last-child{text-align:left;} }
/* Ferramentas: a Missão volta a ser faixa dourada, mas pequena (Sandra 2026-09-25) */
.fer-missao{display:inline-block;font:500 13px Roboto,Arial,sans-serif;font-style:normal;color:#1c1c1c;letter-spacing:.3px;
  background:linear-gradient(90deg,#9a7026,#e6c774 35%,#f3dc98 50%,#e6c774 65%,#9a7026);padding:5px 14px;border-radius:3px;margin:4px 0 12px;box-shadow:0 3px 10px rgba(0,0,0,.3);}
/* Contactos do rodapé mais pequenos (Sandra 2026-09-25) — nº e nota na mesma linha */
footer.rodape .rodape-col:last-child p{margin:0 0 2px;line-height:1.3;}
footer.rodape .rodape-col:last-child a{font-size:12px;font-weight:400;}
footer.rodape .rodape-col:last-child p small{display:inline;font-size:9.5px;margin-left:5px;white-space:nowrap;}
footer.rodape .rodape-col:last-child br{display:none;}
/* Rodapé organizado em 2 tópicos alinhados à esquerda: LOJAS | CONTACTOS (2026-09-25) */
.rodape-topo{grid-template-columns:auto auto !important;justify-content:start;column-gap:70px;align-items:start;}
.rodape-topo .rodape-col:last-child{text-align:left !important;}
footer.rodape .rodape-col h4{margin:0 0 6px;}
@media (max-width:760px){ .rodape-topo{grid-template-columns:1fr !important;} }
/* Correção 25/09: CONTACTOS encostados e alinhados à DIREITA; LOJAS à esquerda */
.rodape-topo{grid-template-columns:auto auto !important;justify-content:space-between;}
.rodape-topo .rodape-col:last-child{text-align:right !important;}
@media (max-width:760px){ .rodape-topo{grid-template-columns:1fr !important;} .rodape-topo .rodape-col:last-child{text-align:left !important;} }
/* Página do imóvel (Sandra 2026-09-25): título e preço por cima da foto; foto
   mais baixa (16:9) e a encher a caixa, para se ver mais da página. */
.im-foto-principal{aspect-ratio:16/9;max-height:470px;background:#1c1c1c;}
.im-foto-principal img{object-fit:cover;}
.im-titulo-foto{position:absolute;left:0;right:0;top:0;z-index:2;display:flex;justify-content:space-between;align-items:flex-start;gap:14px;
  padding:14px 18px 34px;background:linear-gradient(180deg,rgba(0,0,0,.62),rgba(0,0,0,0));pointer-events:none;}
.im-titulo-foto h1{margin:0;font:400 19px/1.3 "Segoe UI",Helvetica,Arial,sans-serif;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.5);}
.im-titulo-foto .im-preco{color:var(--gold-light);font-size:22px;text-shadow:0 1px 6px rgba(0,0,0,.5);}
.im-pagina .voltar{margin-bottom:8px;}
@media (max-width:600px){ .im-titulo-foto{flex-direction:column;gap:2px;padding:10px 12px 26px;} .im-titulo-foto h1{font-size:15px;} .im-titulo-foto .im-preco{font-size:18px;} }
.im-foto-principal img.retrato{object-fit:contain;}
/* Foto do imóvel ainda mais baixa (Sandra 2026-09-25: "pode ser ainda menos") */
.im-foto-principal{aspect-ratio:2/1;max-height:380px;}
/* Localização na parte de baixo da foto (Sandra 2026-09-25) */
.im-local-foto{position:absolute;left:0;bottom:0;z-index:2;padding:26px 18px 12px;right:60px;color:#fff;font:400 14px "Segoe UI",Helvetica,Arial,sans-serif;
  text-shadow:0 1px 5px rgba(0,0,0,.6);background:linear-gradient(0deg,rgba(0,0,0,.55),rgba(0,0,0,0));pointer-events:none;}
.im-foto-principal .im-contador{z-index:3;}
/* Página do imóvel — tudo visível no 1.º ecrã (Sandra 2026-09-25) */
.im-foto-principal{max-height:340px;}
.im-miniaturas{padding:5px 0 0;gap:5px;}
.im-miniaturas img{width:64px;height:44px;}
.im-factos{margin-top:8px;}
.im-factos .im-grupo{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px 12px;padding:8px 2px;}
.im-factos .im-grupo div{font-size:13px;}
.im-factos .im-grupo span{font-size:10.5px;margin-bottom:1px;}
.im-carac{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:7px 2px;border-top:1px solid var(--border);}
.im-carac-tit{font-size:10.5px;color:var(--muted);margin-right:4px;}
.im-chip{font-size:12px;color:var(--ink);background:#fff;border:1px solid var(--border);border-radius:14px;padding:2px 10px;}
.im-descricao-curta{margin-top:6px;font-size:13.5px;line-height:1.55;}
@media (max-width:900px){ .im-factos .im-grupo{grid-template-columns:repeat(3,minmax(0,1fr));} }
/* Email ao meio do rodapé (Sandra 2026-09-25): LOJAS | EMAIL | CONTACTOS */
.rodape-topo{grid-template-columns:auto 1fr auto !important;column-gap:40px;}
.rodape-topo .rodape-col{order:1;}
.rodape-topo .rodape-email{order:2;text-align:center;align-self:center;}
.rodape-topo .rodape-col:last-child{order:3;}
footer.rodape .rodape-email a{font-size:14px;}
@media (max-width:760px){ .rodape-topo{grid-template-columns:1fr !important;} .rodape-topo .rodape-email{text-align:left;} }
/* Título das ferramentas numa só linha (Sandra 2026-09-25) */
.fer-linha{grid-template-columns:auto minmax(0,1fr);}
.fer-esq .fer-titulo{white-space:nowrap;font-size:clamp(17px,1.55vw,21px);}
@media (max-width:980px){ .fer-linha{grid-template-columns:1fr;} .fer-esq .fer-titulo{white-space:normal;} }
/* Missão + botão na mesma linha (2026-09-25) */
.fer-acao{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:6px;}
.fer-acao .fer-missao{margin:0;}
.fer-acao .fer-botao{margin:0;}
/* Alinhamento rodapé + ferramentas (Sandra 2026-09-25: "tens de alinhar"):
   títulos LOJAS / EMAIL / CONTACTOS à mesma altura e mesmas margens da faixa de cima. */
.rodape-topo{align-items:start !important;max-width:1180px;box-sizing:border-box;}
.rodape-topo .rodape-email{align-self:start !important;}
footer.rodape .rodape-col h4{margin:0 0 8px !important;line-height:1.2;}
.rodape-email p{margin-top:0;line-height:48px;}
.fer-in.fer-linha{box-sizing:border-box;padding:0 16px;}
/* Dados do imóvel no máximo em 2 linhas (Sandra 2026-09-25): até 8 por linha */
.im-factos .im-grupo{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:4px 10px;padding:7px 2px;}
.im-factos .im-grupo div{font-size:12.5px;white-space:nowrap;}
.im-factos .im-grupo span{font-size:10px;white-space:nowrap;}
/* miniaturas sem barra de deslocação visível */
.im-miniaturas{scrollbar-width:none;} .im-miniaturas::-webkit-scrollbar{display:none;}
/* 2 linhas fixas de 6: identificação | áreas + divisões (2026-09-25) */
.im-factos .im-grupo{grid-template-columns:repeat(6,minmax(0,1fr));padding:6px 2px;}
.im-factos .im-grupo + .im-grupo{border-top:1px dashed var(--border);}
@media (max-width:700px){ .im-factos .im-grupo{grid-template-columns:repeat(3,minmax(0,1fr));} }
/* Imóveis Semelhantes iguais aos cartões da página inicial (2026-09-25) */
.semelhantes{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;}
.semelhantes .cartao .ic-sv svg{width:18px;height:18px;color:var(--gold);flex:none;}
.semelhantes .cartao .foto{aspect-ratio:4/3;object-fit:cover;}
@media (max-width:760px){ .semelhantes{grid-template-columns:1fr;} }
/* Páginas de conteúdo (Empresa, International, Guias…): títulos DOURADOS (Sandra 2026-09-25) */
.pg-conteudo h1{color:var(--gold) !important;font-weight:400;}
.pg-corpo h2,.pg-corpo h3{color:var(--gold) !important;}
.pg-subtitulo{color:var(--muted);}
/* Botões no topo das páginas International (2026-09-25) */
.pg-cta{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 18px;}
.pg-cta a{font:500 13px Roboto,Arial,sans-serif;padding:8px 16px;border-radius:6px;text-decoration:none;}
.pg-cta-1{background:var(--gold);color:#fff;} .pg-cta-1:hover{background:#9c7123;}
.pg-cta-2{border:1px solid var(--gold);color:var(--gold);} .pg-cta-2:hover{background:var(--gold);color:#fff;}
.pg-corpo ul{margin:4px 0 12px 20px;} .pg-corpo a{color:var(--gold);}
.pg-corpo .pg-cta a.pg-cta-1,.pg-corpo .pg-cta a.pg-cta-2:hover{color:#fff;} .pg-corpo .pg-cta a.pg-cta-2{color:var(--gold);}
/* Equipa: frase de apresentação do consultor (2026-09-25) */
.equipa-bio{margin:6px 0 0;font:italic 300 12.5px/1.45 Roboto,Arial,sans-serif;color:var(--sub);}
/* Valores em cartões (página Missão, Visão & Valores) */
.valores{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:10px 0 20px;}
.valor{background:#fff;border:1px solid var(--border);border-top:3px solid var(--gold);border-radius:8px;padding:12px 14px;}
.pg-corpo .valor h3{margin:0 0 4px;font-size:13px;letter-spacing:1.2px;text-transform:uppercase;}
.pg-corpo .valor p{margin:0;font-size:13px;line-height:1.45;}
@media (max-width:900px){ .valores{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media (max-width:520px){ .valores{grid-template-columns:1fr;} }
/* Submenus do fim do menu (Blog, International) abrem para a ESQUERDA —
   não ficam cortados pela borda do ecrã (Sandra 2026-09-25) */
@media (min-width:901px){
  .mn-lista > .mn-item:nth-last-child(-n+2) > .mn-sub{left:auto;right:0;}
  .mn-sub{white-space:nowrap;}
}

/* Blog por categorias + CTA no fim dos artigos (Sandra 2026-09-25) */
.blog-meta{font-size:12px;color:var(--muted);margin:0 0 14px;} .blog-meta a{color:var(--gold);}
.blog-guia{display:inline-block;margin:0 0 16px;padding:8px 14px;border:1px solid var(--gold);border-radius:8px;color:var(--gold);text-decoration:none;font-weight:500;font-size:13.5px;}
.blog-guia:hover{background:var(--gold);color:#fff;}
.blog-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:26px 0 10px;padding:16px 18px;background:#1c1c1c;border-radius:10px;border-left:4px solid var(--gold);}
.blog-cta strong{color:#fff;font-weight:500;font-size:15px;}
.pg-corpo .blog-cta a{background:var(--gold);color:#fff;text-decoration:none;padding:8px 16px;border-radius:6px;font-size:13px;white-space:nowrap;}
.pg-corpo a.blog-cartao,.pg-corpo a.blog-cartao *{text-decoration:none;} .pg-corpo a.blog-cartao{color:var(--ink);} .pg-corpo a.blog-guia{text-decoration:none;}

/* 25/09 (Sandra, "FAZ TUDO" do Blog): página inicial do Blog, filtros,
   pesquisa, artigo em destaque, notícia comentada (fonte), tags, migalhas */
.migalhas{font-size:12px;color:var(--muted);margin:0 0 6px;}
.migalhas a{color:var(--muted);text-decoration:none;} .migalhas a:hover{color:var(--gold);}
.migalhas span{color:var(--sub);}
.blog-filtros{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 18px;}
.pg-corpo .blog-filtros a{font-size:12.5px;padding:5px 11px;border:1px solid #ddd;border-radius:16px;color:var(--sub);text-decoration:none;white-space:nowrap;}
.pg-corpo .blog-filtros a:hover,.pg-corpo .blog-filtros a.ativo{border-color:var(--gold);color:#fff;background:var(--gold);}
.blog-pesquisa{display:flex;margin-left:auto;border:1px solid #ddd;border-radius:16px;overflow:hidden;background:#fff;}
.blog-pesquisa input{border:0;outline:0;padding:5px 12px;font-size:13px;width:180px;font-family:inherit;}
.blog-pesquisa button{border:0;background:transparent;color:var(--gold);font-size:17px;padding:0 10px;cursor:pointer;}
.blog-etq{font-style:normal;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);}
.blog-cartao.blog-destaque{display:grid;grid-template-columns:1.25fr 1fr;margin:0 0 18px;}
.blog-cartao.blog-destaque img{height:100%;aspect-ratio:auto;min-height:230px;}
.blog-cartao.blog-destaque div{padding:22px 24px;justify-content:center;}
.blog-cartao.blog-destaque strong{font-size:22px;line-height:1.25;}
.blog-cartao.blog-destaque span{font-size:14.5px;}
.blog-guias{display:flex;gap:10px;flex-wrap:wrap;}
.blog-bloco{margin:10px 0 22px;}
.pg-corpo .blog-bloco h2{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:14px 0 12px;}
.pg-corpo .blog-bloco h2 a{font-size:12.5px;font-family:'Roboto',sans-serif;color:var(--gold);text-decoration:none;font-weight:400;}
.blog-fonte{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0 0 18px;padding:10px 14px;border:1px solid #e6dcc4;background:#fbf8f1;border-radius:8px;font-size:13px;}
.pg-corpo .blog-fonte a{color:var(--gold);font-weight:500;}
.blog-fonte small{flex-basis:100%;color:var(--muted);font-size:11.5px;}
.blog-tags{margin:14px 0 6px;display:flex;flex-wrap:wrap;gap:6px;}
.pg-corpo .blog-tags a{font-size:12px;color:var(--sub);background:#f3f0e8;border-radius:12px;padding:3px 9px;text-decoration:none;}
@media (max-width:700px){
  .blog-cartao.blog-destaque{grid-template-columns:1fr;}
  .blog-cartao.blog-destaque img{min-height:0;aspect-ratio:16/9;}
  .blog-pesquisa{margin-left:0;width:100%;} .blog-pesquisa input{flex:1;width:auto;}
}
/* filtros numa só linha: a pesquisa sobe para a linha do título (desktop) */
.pg-conteudo{position:relative;}
@media (min-width:701px){
  .blog-pesquisa{position:absolute;top:34px;right:16px;}
  .pg-corpo .blog-filtros{flex-wrap:nowrap;}
  .pg-corpo .blog-filtros a{padding:4px 10px;font-size:12px;}
}
/* Equipa (Sandra 2026-09-26: "não gosto assim, tens de mudar as letras e dar
   para mais consultores" + imagem do HCPro): cartões em 3 colunas, foto grande
   em cima, tudo centrado, nome dourado fino; apresentação fechada em
   "Sobre mim" para os cartões ficarem todos do mesmo tamanho. */
.equipa-lista{grid-template-columns:repeat(auto-fit,minmax(250px,340px));justify-content:center;gap:22px;max-width:1100px;margin:8px auto 0;}
.equipa-cartao{display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 0 18px;border-radius:6px;overflow:hidden;box-shadow:0 1px 6px rgba(0,0,0,.08);}
.equipa-cartao img,.equipa-sem-foto{width:100%;height:300px;object-fit:cover;object-position:center top;border-radius:0;background:#111;}
.equipa-sem-foto{font-size:64px;}
.equipa-info{display:flex;flex-direction:column;align-items:center;padding:16px 14px 0;width:100%;box-sizing:border-box;}
.equipa-info strong{font:300 21px/1.3 Roboto,Arial,sans-serif;color:var(--gold);margin:0 0 10px;}
.equipa-cargo{font:400 13px/1.3 Roboto,Arial,sans-serif;color:var(--ink);letter-spacing:.3px;margin-bottom:14px;}
.equipa-info a{justify-content:center;font-size:14px;}
.equipa-info a[href^="tel:"]{color:var(--ink);}
.equipa-info .im-nota-linha{display:block;font-size:11.5px;color:var(--ink);margin:2px 0 4px;}
.equipa-bio{margin:12px 0 0;width:100%;font:400 13px/1.5 Roboto,Arial,sans-serif;color:var(--sub);}
.equipa-bio summary{cursor:pointer;color:var(--gold);list-style:none;font-size:13.5px;}
.equipa-bio summary::-webkit-details-marker{display:none;}
.equipa-bio p{margin:8px 0 0;text-align:left;font-style:normal;}
@media (max-width:560px){.equipa-lista{grid-template-columns:1fr;}.equipa-cartao img,.equipa-sem-foto{height:340px;}}
/* 26/09 (Sandra): redes sociais no canto superior esquerdo da barra preta */
.topo-redes{display:flex;align-items:center;gap:12px;margin-right:14px;}
.topo-redes a{display:inline-flex;color:var(--gold-light);opacity:.85;}
.topo-redes a:hover{opacity:1;color:#fff;}
.topo-redes svg{width:16px;height:16px;}
header.topo.topo-fino .topo-redes + .topo-esq:empty + .contacto,header.topo.topo-fino .topo-redes + .contacto{margin-left:auto;}
@media (max-width:600px){.topo-redes{margin:0 auto;}}
/* 26/09 (Sandra): botão WhatsApp bem visível na página do imóvel, logo a seguir ao agente */
.im-whatsapp{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 0 4px;padding:11px 14px;background:#25D366;color:#fff !important;border-radius:8px;font-weight:600;font-size:15px;text-decoration:none;box-shadow:0 2px 8px rgba(37,211,102,.3);}
.im-whatsapp:hover{background:#1ebe5b;}
.im-whatsapp svg{width:20px;height:20px;}
@media print{.im-whatsapp,.topo-redes{display:none;}}
/* 27/09 (Sandra: "o botão som está sobreposto, organiza"): com o vídeo da loja
   ou o 360 a passar, os controlos do YouTube/Matterport (título, som,
   definições) ficavam por baixo do logótipo e do menu. Nesse modo: sai o
   logótipo grande e a caixa "Quanto vale…", e o vídeo começa abaixo do menu. */
.capa.modo-loja .capa-logo,.capa.modo-loja .capa-servicos{display:none !important;}
.capa.modo-loja .capa-video{top:84px;}
@media (max-width:860px){ .capa.modo-loja .capa-video{top:64px;} }
/* 27/09: "Sobre mim" organizado — título a negrito + parágrafos curtos */
.equipa-bio p{margin:0 0 9px;line-height:1.55;}
.equipa-bio .bio-lema{color:var(--ink);font-size:13px;letter-spacing:.2px;margin-top:10px;}
/* o nome do consultor usa .equipa-info strong (21px, bloco) — aqui volta ao tamanho do texto */
.equipa-info .equipa-bio strong{display:inline;font:700 13px/1.5 Roboto,Arial,sans-serif;color:var(--ink);margin:0;letter-spacing:.2px;}
.equipa-bio .bio-nome{font-style:italic;color:var(--gold);}
/* 27/09: formulário do imóvel — no fim, enviar por email OU WhatsApp (lado a lado) */
.im-enviar-duplo{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.im-enviar-duplo .im-enviar{margin:0;display:flex;align-items:center;justify-content:center;gap:6px;}
.im-enviar-wa{background:#25D366 !important;border-color:#25D366 !important;color:#fff !important;}
.im-enviar-wa:hover{background:#1ebe5b !important;}
.im-enviar-wa svg{width:18px;height:18px;}
@media (max-width:420px){ .im-enviar-duplo{grid-template-columns:1fr;} }
/* 27/09: no telemóvel a página do imóvel ficava mais larga que o ecrã (scroll
   para o lado) — a coluna "1fr" não encolhia abaixo da fila de miniaturas. */
.im-colunas > *{min-width:0;}
@media (max-width:900px){ .im-colunas{grid-template-columns:minmax(0,1fr);} }
/* 27/09: contacto do imóvel — [WhatsApp] e por baixo [Email] → janela com dados + 4 tipos */
.im-contacto-botoes{display:flex;flex-direction:column;gap:8px;margin:12px 0 6px;}
.im-contacto-botoes .im-whatsapp{margin:0;border:0;cursor:pointer;font-family:inherit;width:100%;}
.im-email-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:8px;border:1.5px solid var(--gold);background:#fff;color:var(--gold);font:600 15px/1.2 inherit;cursor:pointer;width:100%;font-family:inherit;}
.im-email-btn:hover,.im-email-btn.ativo{background:var(--gold);color:#fff;}
.im-contacto-janela{margin-top:6px;}
.im-tipos{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:2px 0 4px;}
.im-tipos label{display:flex;align-items:center;gap:6px;font-size:13px;padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:#fff;cursor:pointer;}
.im-tipos label:has(input:checked){border-color:var(--gold);background:var(--gold-light,#f6efdc);font-weight:600;}
.im-tipos input{margin:0;accent-color:var(--gold);}
@media (max-width:420px){ .im-tipos{grid-template-columns:1fr;} }
/* 28/09 (Sandra, página do imóvel): "reduzir o espaço das linhas das informações para se conseguir
   ver o que é preciso escrever" + "Falar por WhatsApp / Pedir por email podiam ser botões na mesma
   linha". Coluna da direita mais compacta: títulos, Agência e Agente com menos altura; os 2 botões
   lado a lado (no telemóvel muito estreito voltam a ficar um por baixo do outro). */
.im-direita .im-bloco-titulo{margin:8px 0 4px;}
.im-agencia,.im-agente{grid-template-columns:60px minmax(0,1fr);gap:10px;line-height:1.3;}
.im-agencia img{width:60px;}
.im-agente img{width:60px;height:74px;}
.im-nota-linha{display:inline;margin:0 0 0 5px;font-size:10px;}
.im-nota-linha::after{content:"";display:block;margin-bottom:2px;}
.im-contacto-botoes{flex-direction:row;gap:8px;margin:10px 0 4px;}
.im-contacto-botoes > button{flex:1 1 0;min-width:0;padding:9px 8px;font-size:13.5px;white-space:nowrap;}
.im-contacto-botoes .im-whatsapp svg{width:18px;height:18px;}
@media (max-width:360px){ .im-contacto-botoes{flex-direction:column;} }

/* 28/09 (Sandra: "as fotos das lojas estão raquíticas… algo moderno" + "as bandas pretas não mexem
   de tamanho"): a banda do rodapé mantém a altura — a foto fica ao lado do texto, com a MESMA altura de antes (48px)
   dele, mas panorâmica 2:1 (originais 2048px recortados a 1200×600 → nítida, sem ficar espremida). */
.rodape-loja img{width:96px;height:48px;object-fit:cover;border-radius:6px;border:1px solid rgba(233,217,173,.35);box-shadow:0 3px 10px rgba(0,0,0,.35);transition:transform .3s ease;}
.rodape-loja img:hover{transform:scale(1.04);}

/* 28/09 (Sandra) — International: capa editorial inteira (a imagem tem texto, não se corta),
   CTA final com 2 botões e carrossel "Explore Portugal" entre as páginas International. */
.pg-capa-inteira{max-width:1180px;margin:14px auto 0;padding:0 16px;}
.pg-capa-inteira img{display:block;width:100%;height:auto;border-radius:10px;box-shadow:0 6px 24px rgba(0,0,0,.12);}
.int-cta-bts{display:flex;gap:8px;flex-wrap:wrap;}
.pg-corpo .blog-cta a.int-cta-2{background:transparent;border:1px solid var(--gold-light);color:var(--gold-light);}
.pg-corpo .blog-cta a.int-cta-2:hover{background:var(--gold);border-color:var(--gold);color:#fff;}
.int-carrossel{margin:34px 0 8px;}
.int-carrossel h2{font:400 22px Georgia,serif !important;color:#1c1c1c;margin:0 0 12px;letter-spacing:.5px;}
.int-janela{position:relative;overflow:hidden;border-radius:10px;}
.int-faixa{display:flex;transition:transform .6s ease;}
.int-slide{flex:0 0 50%;box-sizing:border-box;padding:0 6px;text-decoration:none;color:inherit;}
.int-foto{display:block;aspect-ratio:16/9;background:#222 center/cover no-repeat;border-radius:10px;}
.int-texto{display:block;padding:10px 4px 4px;}
.int-texto b{display:block;font:500 16px 'Roboto',sans-serif;color:#1c1c1c;letter-spacing:.3px;}
.int-texto small{display:block;font-size:13px;color:#777;margin-top:2px;line-height:1.45;}
.int-slide:hover .int-texto b{color:var(--gold);}
.int-seta{position:absolute;top:calc(50% - 40px);width:38px;height:38px;border-radius:50%;border:none;background:rgba(20,18,10,.55);color:#fff;font-size:22px;cursor:pointer;}
.int-seta:hover{background:var(--gold);}
.int-seta.ant{left:12px;} .int-seta.seg{right:12px;}
.int-pontos{display:flex;justify-content:center;gap:6px;margin-top:8px;}
.int-pontos button{width:8px;height:8px;border-radius:50%;border:none;background:#d9cfb4;padding:0;cursor:pointer;}
.int-pontos button.on{background:var(--gold);}
@media (max-width:700px){ .int-slide{flex-basis:100%;} }

/* 28/09 (Sandra) — barras flutuantes: menu no topo ao descer a página + contacto fixo no telemóvel */
.barra-flut{position:fixed;top:10px;left:50%;transform:translate(-50%,-140%);z-index:900;width:min(1180px,calc(100% - 24px));box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 10px 6px 16px;border-radius:40px;background:rgba(20,18,10,.78);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(233,217,173,.25);box-shadow:0 10px 30px rgba(0,0,0,.25);transition:transform .35s ease,opacity .35s ease;opacity:0;pointer-events:none;}
.barra-flut.bf-on{transform:translate(-50%,0);opacity:1;pointer-events:auto;}
.bf-marca{display:flex;align-items:center;gap:8px;text-decoration:none;flex:none;}
.bf-marca img{height:30px;width:auto;}
.bf-marca span{font-family:'Great Vibes',cursive;font-size:24px;color:var(--gold-light);white-space:nowrap;}
.barra-flut .mn-link{font-size:12px;padding:7px 10px;border-radius:20px;}
.barra-flut .mn-sub{top:calc(100% + 6px);}
.barra-contacto{display:none;}
@media (max-width:760px){
  .barra-flut{top:6px;padding:5px 8px 5px 12px;}
  .bf-marca span{font-size:20px;}
  .barra-flut .mn-lista{display:none;}
  .barra-flut .mn-abrir{display:inline-block;}
  .barra-flut .menu-principal.mn-aberto .mn-lista{display:flex;flex-direction:column;align-items:stretch;position:absolute;right:0;top:calc(100% + 8px);width:min(280px,86vw);background:rgba(20,18,10,.95);border-radius:14px;padding:8px;}
  .barra-contacto{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:6px;position:fixed;left:8px;right:8px;bottom:8px;z-index:900;padding:6px;border-radius:16px;background:rgba(20,18,10,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 24px rgba(0,0,0,.3);}
  .barra-contacto a{display:flex;align-items:center;justify-content:center;gap:4px;padding:10px 4px;border-radius:11px;color:#fff;text-decoration:none;font:500 13px 'Roboto',Arial,sans-serif;background:rgba(255,255,255,.08);white-space:nowrap;}
  .barra-contacto a.bc-ouro{background:var(--gold);}
  body.com-barra-contacto{padding-bottom:74px;}
}
/* 30/09: Chat WhatsApp flutuante (só computador; no telemóvel há a barra de contacto) */
.wa-flut{position:fixed;right:22px;bottom:22px;z-index:900;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.28);transition:transform .15s;}
.wa-flut:hover{transform:scale(1.08);}
.wa-flut svg{width:32px;height:32px;}
@media (max-width:760px){ .wa-flut{display:none;} }
/* 30/09: aviso de cookies (Google Analytics só depois de Aceitar) */
.aviso-cookies{position:fixed;left:22px;bottom:22px;z-index:950;max-width:420px;background:#1c1a14;color:#f3eee2;border:1px solid var(--gold);border-radius:14px;padding:14px 16px;box-shadow:0 6px 22px rgba(0,0,0,.35);font:400 13px/1.45 'Roboto',Arial,sans-serif;}
.aviso-cookies p{margin:0 0 10px;}
.aviso-cookies a{color:var(--gold-light);}
.aviso-cookies div{display:flex;gap:8px;justify-content:flex-end;}
.aviso-cookies button{border:1px solid var(--gold);border-radius:20px;padding:7px 16px;font:500 13px 'Roboto',Arial,sans-serif;cursor:pointer;background:transparent;color:#f3eee2;}
.aviso-cookies button.ac-sim{background:var(--gold);color:#1c1a14;}
@media (max-width:760px){ .aviso-cookies{left:8px;right:8px;bottom:82px;max-width:none;} }
@media print{ .barra-flut,.barra-contacto,.wa-flut,.aviso-cookies{display:none !important;} }

/* 28/09 (Sandra: "a ideia das fotos era preencherem totalmente a barra e os dados ficavam por cima"):
   a banda do rodapé (Lojas · Email · Contactos) passa a ter as 2 lojas como fundo — Loja 1 à esquerda,
   Loja 2 à direita — com véu escuro para ler o texto. A altura da banda não muda. As miniaturas saem. */
footer.rodape .rodape-topo{position:relative;isolation:isolate;max-width:none !important;padding-left:max(16px,calc((100% - 1148px)/2)) !important;padding-right:max(16px,calc((100% - 1148px)/2)) !important;}
footer.rodape .rodape-topo::before,footer.rodape .rodape-topo::after{content:"";position:absolute;top:0;bottom:0;width:50%;z-index:-2;background-size:cover;background-repeat:no-repeat;}
footer.rodape .rodape-topo::before{left:0;background-image:linear-gradient(90deg,rgba(15,13,8,.35),rgba(15,13,8,.72)),url('/assets/rodape-loja1.jpg');background-position:center 45%;}
footer.rodape .rodape-topo::after{right:0;background-image:linear-gradient(90deg,rgba(15,13,8,.72),rgba(15,13,8,.35)),url('/assets/rodape-loja2.jpg');background-position:center 40%;}
footer.rodape .rodape-topo{background:rgba(15,13,8,.25);text-shadow:0 1px 3px rgba(0,0,0,.7);}
footer.rodape .rodape-loja img{display:none;}
footer.rodape.rodape-sem-fotos .rodape-topo::before,footer.rodape.rodape-sem-fotos .rodape-topo::after{display:none;}
footer.rodape.rodape-sem-fotos .rodape-topo{background:none;text-shadow:none;}
@media (max-width:760px){
  footer.rodape .rodape-topo::before,footer.rodape .rodape-topo::after{width:100%;height:50%;left:0;right:auto;}
  footer.rodape .rodape-topo::before{top:0;bottom:auto;background-image:linear-gradient(rgba(15,13,8,.62),rgba(15,13,8,.62)),url('/assets/rodape-loja1.jpg');}
  footer.rodape .rodape-topo::after{top:auto;bottom:0;background-image:linear-gradient(rgba(15,13,8,.62),rgba(15,13,8,.62)),url('/assets/rodape-loja2.jpg');}
}

/* 28/09 (Sandra: "faz separador ao meio, barra dourada… e os dados de cada loja na foto respetiva"):
   banda em 4 colunas iguais — [Loja 1 | Email] ‖ [Contactos | Loja 2] — com barra dourada ao meio.
   Os dados de cada loja ficam sobre a sua foto (Loja 1 à esquerda, Loja 2 à direita). */
footer.rodape .rodape-topo{min-height:88px;box-sizing:border-box;display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;column-gap:0 !important;row-gap:0 !important;align-items:center !important;justify-content:stretch !important;}
footer.rodape .rodape-topo > .rodape-marca{display:none !important;}
footer.rodape .rodape-col:has(.rodape-lojas){display:contents;}
footer.rodape .rodape-col:has(.rodape-lojas) > h4{display:none;}
footer.rodape .rodape-lojas{display:contents;}
footer.rodape .rodape-loja{grid-row:1;}
footer.rodape .rodape-loja:first-child{grid-column:1;justify-self:start;}
footer.rodape .rodape-loja:last-child{grid-column:4;justify-self:end;text-align:right;}
footer.rodape .rodape-topo > .rodape-email{grid-row:1;grid-column:2;justify-self:end;text-align:right !important;padding-right:24px;}
footer.rodape .rodape-topo > .rodape-col:last-child{grid-row:1;grid-column:3;justify-self:stretch;text-align:left !important;padding-left:24px;border-left:2px solid var(--gold);align-self:stretch;display:flex;flex-direction:column;justify-content:center;}
footer.rodape .rodape-loja p b{font-size:13px;letter-spacing:.5px;}
@media (max-width:760px){
  footer.rodape .rodape-topo{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  footer.rodape .rodape-loja:first-child{grid-column:1;grid-row:1;}
  footer.rodape .rodape-topo > .rodape-email{grid-column:2;grid-row:1;padding-right:0;}
  footer.rodape .rodape-topo > .rodape-col:last-child{grid-column:1;grid-row:2;border-left:none;border-top:2px solid var(--gold);padding:10px 0 0;}
  footer.rodape .rodape-loja:last-child{grid-column:2;grid-row:2;border-top:2px solid var(--gold);padding-top:10px;align-self:stretch;}
}

/* 17/10/2026 Sandra: "no site tem de mostrar [as fotos] com logo". O logo vai POR CIMA da foto (as fotos guardadas ficam limpas):
   pequeno, no canto inferior direito, sumido. O logo vem de --logo-fotos (CRM → Multimédia → Logo) ou do de sempre. */
.im-foto-principal::after, .cartao .foto-caixa::after{content:'';position:absolute;right:3%;bottom:4%;width:22%;max-width:170px;aspect-ratio:1200/784;
  background:var(--logo-fotos, url('/assets/marca-agua-ci.png')) no-repeat center/contain;pointer-events:none;z-index:2;}
/* 17/10 Sandra: na foto de capa do site NÃO leva logo */

/* 18/10: números das páginas por baixo do carrossel — caixas pequenas */
.car-paginas{margin-top:12px;gap:5px;}
.car-paginas button{padding:3px 9px;font-size:12px;min-width:26px;line-height:16px;}

/* 18/10/2026: Testemunhos na página inicial (aprovados no CRM) */
.testemunhos{background:var(--cream);padding:28px 16px;}
.tst-in{max-width:1180px;margin:0 auto;}
.tst-titulo{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:22px;margin:0 0 14px;text-align:center;}
.tst-grelha{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;}
.tst-item{margin:0;background:#fff;border:1px solid var(--border);border-radius:10px;padding:12px 14px;}
.tst-estrelas{color:var(--gold);font-size:15px;letter-spacing:1px;}
.tst-estrelas span{color:#ddd3bb;}
.tst-item blockquote{margin:6px 0 8px;font-size:13px;line-height:1.45;color:var(--ink);white-space:pre-line;}
.tst-item figcaption{font-size:12px;color:var(--sub);}

/* 18/10/2026 (Sandra): redes sociais em ícones redondos com as cores das marcas (topo + rodapé preto) */
.redes-ic a{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;color:#fff;opacity:.92;flex:0 0 auto;transition:opacity .15s,transform .15s;}
.redes-ic a:hover{opacity:1;color:#fff;transform:scale(1.08);}
.redes-ic svg{width:13px;height:13px;}
.topo-redes.redes-ic{gap:8px;}
.rd-facebook{background:#1877f2;}
.rd-instagram{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285aeb 90%);}
.rd-linkedin{background:#0a66c2;}
.rd-youtube{background:#ff0000;}
.rd-whatsapp{background:#25d366;}
/* 18/10/2026 (Sandra): redes com os ícones dourados dela (sem fundo de cor) */
.redes-ic a.rd-ouro{background:none;width:26px;height:26px;}
.redes-ic a.rd-ouro img{width:26px;height:26px;display:block;}
/* 18/10/2026: redes do consultor (Equipa + página do imóvel), só as marcadas para publicar */
.cons-redes{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap;}
.cons-redes a{display:inline-flex;}
.cons-redes img{width:22px;height:22px;display:block;}
.rodape-redes{display:flex;justify-content:center;align-items:center;flex-wrap:nowrap;gap:10px;padding:10px 16px 8px;background:#111;border-top:1px solid rgba(233,217,173,.12);}
footer.rodape.rodape-escuro .rodape-redes + .rodape-legal{border-top:none;}
@media print{.rodape-redes{display:none;}}

/* 18/10/2026 (Sandra): "Imóveis em carteira" maior (≈ 2 bolinhas), 2 linhas, centrado por baixo da fila */
.separadores .sep-quebra{flex-basis:100%;height:0;}
.separadores button.sep-carteira-grande{flex-direction:column;gap:1px;min-width:230px;padding:7px 20px;border-radius:22px;line-height:1.2;justify-content:center;}
.separadores button.sep-carteira-grande b{font-weight:500;font-size:14px;}
.separadores button.sep-carteira-grande small{font-size:10.5px;}
@media (max-width:600px){ .separadores button.sep-carteira-grande{width:100%;min-width:0;} }

/* 18/10/2026: rótulo "Tipologia:" antes das bolinhas (as bolinhas são o filtro) */
.separadores .sep-rotulo{align-self:center;font:400 11px Roboto,Arial,sans-serif;color:var(--muted);margin-right:0;white-space:nowrap;}
/* para o rótulo caber sem empurrar o "Ver 3·12·24" para outra linha no computador */
@media (min-width:1000px){ .separadores{gap:4px;} .separadores .sep-divisor{margin:2px 2px;} .separadores button{padding-left:10px;padding-right:10px;} .separadores button.sep-carteira-grande{padding-left:20px;padding-right:20px;} }

/* 18/10/2026 (decisão final): uma só fila — Tipologia ▾ (menu) · Premium · Piscina · Vista mar · Investimento · Em carteira · Vendidos */
.separadores .sep-tipologia{position:relative;display:inline-flex;}
.separadores .sep-x{margin-left:4px;font-size:11px;opacity:.85;padding:0 2px;}
.separadores .sep-menu{position:absolute;top:calc(100% + 4px);left:0;z-index:20;display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:6px;box-shadow:0 6px 18px rgba(0,0,0,.12);min-width:130px;}
.separadores .sep-menu[hidden]{display:none;}
.separadores .sep-menu button{justify-content:space-between;width:100%;}
.separadores button.sep-carteira-grande{min-width:0;padding:4px 16px;}
.separadores button.sep-carteira-grande b{font-size:13.5px;}
.separadores button.sep-carteira-grande small{font-size:9.5px;}
.ver-fundo{display:flex;justify-content:center;margin:10px 0 0;}
.ver-fundo .ver-grupo{display:inline-flex;align-items:center;gap:3px;border:1px solid var(--border);border-radius:20px;padding:2px 3px 2px 10px;font:500 12px Roboto,Arial,sans-serif;color:var(--muted);background:#fff;}
.ver-fundo .ver-grupo button{border:1px solid var(--border);background:#fff;color:var(--ink);font:500 12px Roboto,Arial,sans-serif;padding:3px 9px;min-width:30px;border-radius:20px;cursor:pointer;}
.ver-fundo .ver-grupo button.ativo{background:var(--gold);border-color:var(--gold);color:#fff;}
.separadores .rot-curto{display:none;}
@media (max-width:600px){
  .separadores{gap:3px;}
  .separadores button{padding:4px 7px;font-size:12px;gap:3px;}
  .separadores button.sep-carteira-grande{width:auto;padding:4px 7px;}
  .separadores button.sep-carteira-grande small{display:none;}
  .separadores button.sep-carteira-grande b{font-size:12.5px;}
  .separadores .rot-longo{display:none;} .separadores .rot-curto{display:inline;}
}

/* 18/10 (Sandra): sinal "A carregar…" na foto grande do imóvel */
.im-carregar{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:3;display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.65);color:#fff;font-size:13px;padding:7px 14px;border-radius:20px;pointer-events:none;}
.im-carregar[hidden]{display:none;}
.im-roda{width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#c9a24a;border-radius:50%;animation:imRoda .8s linear infinite;}
@keyframes imRoda{to{transform:rotate(360deg)}}

/* 18/10 (Sandra): separador Planta */
.im-planta{display:block;background:#fff;border:1px solid #e6dcc3;border-radius:6px;margin-bottom:10px;}
.im-planta img{width:100%;max-height:640px;object-fit:contain;display:block;}
.im-media-tabs button[disabled]{opacity:.45;cursor:default;}

/* 18/10/2026 (Sandra: "não gosto dos símbolos de cores, coloca dourados"): círculo preto, aro e símbolo dourados */
.redes-ic a,.redes-ic a.rd-facebook,.redes-ic a.rd-instagram,.redes-ic a.rd-linkedin,.redes-ic a.rd-youtube,.redes-ic a.rd-whatsapp{
  background:radial-gradient(circle at 50% 35%,#2b2618 0%,#0b0b0b 70%);color:#e2bd5c;
  box-shadow:inset 0 0 0 1.5px #c9a24a,0 0 6px rgba(201,162,74,.35);opacity:1;}
.redes-ic a:hover{color:#f6dc8c;box-shadow:inset 0 0 0 1.5px #f0cf78,0 0 9px rgba(240,207,120,.6);}
/* fim redes DOURADAS */

/* 18/10/2026 (Sandra): Localização no imóvel — mapa da zona (sem morada), tempos e distância à morada do cliente */
.im-local-sec{margin-top:14px;}
.im-mapa{position:relative;height:310px;border-radius:6px;overflow:hidden;border:1px solid #e6dcc3;margin:6px 0 8px;background:#f1ede3;}
.im-mapa iframe{position:absolute;left:0;top:-100px;width:100%;height:calc(100% + 100px);border:0;display:block;filter:saturate(.85);} /* topo cortado: esconde o 'Abrir no Maps' */
.im-mapa-tapa{position:absolute;inset:0;z-index:2;cursor:default;}
.im-mapa-nota{position:absolute;left:0;right:0;top:0;height:78px;z-index:3;background:#111;color:#f0d891;font-size:12px;padding:0 12px;display:flex;align-items:center;} /* barra fixa: tapa sempre o 'Abrir no Maps' */
.im-tempos{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px;}
.im-dist{font-size:12.5px;}
.im-dist label{display:block;font-weight:600;margin-bottom:4px;}
.im-dist-linha{display:flex;gap:6px;max-width:460px;}
.im-dist-linha input{flex:1;min-width:0;height:28px;padding:2px 8px;font-size:12.5px;border:1px solid #d8c08a;border-radius:5px;}
.im-dist-linha button{height:28px;padding:0 12px;font-size:12px;border:0;border-radius:5px;background:#111;color:#e2bd5c;cursor:pointer;white-space:nowrap;}
.im-dist-linha button[disabled]{opacity:.6;}
.im-dist-res{margin-top:6px;min-height:16px;}
.im-dist-res.erro{color:#a33a2f;}

/* 18/10 (Sandra): separadores com símbolo dourado (tem) / cinzento (não tem) */
.im-media-tabs button{display:inline-flex;align-items:center;gap:5px;}
.im-tab-ic{width:15px;height:15px;flex:0 0 auto;color:var(--gold);}
.im-media-tabs button.ativo .im-tab-ic{color:#fff;}
.im-media-tabs button[disabled] .im-tab-ic{color:#9a9a9a;}
/* 18/10/2026 (Sandra): ícones dourados dela nos separadores; sem conteúdo = cinzento */
.im-tab-img{width:22px;height:22px;flex:0 0 auto;margin-right:2px;}
.im-media-tabs button[disabled] .im-tab-img{filter:grayscale(1);opacity:.45;}
.im-mapa-vista button{display:inline-flex;align-items:center;gap:4px;}
.im-vista-img{width:16px;height:16px;}

/* 18/10 (Sandra: "google earth"): botões Mapa | Satélite por cima do mapa */
.im-mapa-vista{display:flex;gap:4px;margin-top:6px;}
.im-mapa-vista button{height:24px;padding:0 10px;font-size:12px;border:1px solid #d8c08a;background:#fff;color:#6b4e1c;border-radius:4px;cursor:pointer;}
.im-mapa-vista button.ativo{background:#111;color:#e2bd5c;border-color:#111;}

/* 18/10 (Sandra): símbolos dourados na Localização (sem emojis de cores) */
.im-ic-ouro{width:15px;height:15px;color:var(--gold);vertical-align:-3px;flex:0 0 auto;}
.im-tempos .im-chip{display:inline-flex;align-items:center;gap:5px;}
