/* footer-v3.css: menu e rodape novos (brief T2.1, T2.7, 4.6).
   Vem depois de styles.v2.css e so acrescenta; nao o altera. Gerado/ligado por
   scratchpad/tools/navfooter.py. */

/* ============ MENU: 7 itens + botao ============ */
/* O botao "Falar connosco" fica a seguir aos links, no centro do cabecalho, e o seletor
   de lingua continua preso a direita. */
@media(min-width:981px){
  nav .cta{margin-left:12px;padding:9px 16px}
  nav .cta.active{background:var(--bronze);border-color:var(--bronze);color:#fff}
}
/* Entre 981 e 1279 px o centro do cabecalho e curto para sete itens e um botao: aperta-se
   o espaco dos links para nao tocarem no logotipo nem no seletor de lingua. */
@media(min-width:981px) and (max-width:1279px){
  nav a.lk{padding:10px 8px;letter-spacing:.1em;font-size:.68rem}
  nav a.lk::after{left:8px;right:8px}
  nav .cta{margin-left:6px;padding:9px 12px;letter-spacing:.1em;font-size:.66rem}
  header{padding-left:clamp(18px,2.4vw,30px);padding-right:clamp(18px,2.4vw,30px)}
  nav .langtog,nav .langpick{right:clamp(18px,2.4vw,30px)}
}
/* Submenus Vender e Investir: mais largos, porque os rotulos sao frases. */
.drop-menu{min-width:272px}
.lk-drop>.lk-parent{white-space:nowrap}
.drop-menu a.current{background:rgba(99,150,200,.13)}

/* ============ RODAPE ============ */
/* Missao no topo, com os dois botoes */
.foot-mission{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);
  align-items:end;padding:clamp(8px,1.4vw,18px) 0 clamp(30px,3.6vw,48px);
  border-bottom:1px solid var(--line-d);margin-bottom:clamp(30px,3.4vw,46px)}
.foot-mission-h{font-family:var(--serif);font-weight:500;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.08;
  letter-spacing:-.015em;margin:18px 0 0;color:var(--paper)}
.foot-mission-h i{font-style:italic;color:var(--bronze-l)}
.foot-mission-p{margin:18px 0 0;max-width:52ch;font-size:1.02rem;line-height:1.7;font-weight:300;color:#b6c4d0}
.foot-mission-cta{display:flex;flex-wrap:wrap;gap:14px;justify-content:flex-end}
.foot-mission-cta .btn-line{border-color:rgba(255,255,255,.55);color:var(--paper)}

/* Quatro colunas de ligacoes */
.foot-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,3.4vw,56px);
  padding-bottom:clamp(28px,3.2vw,40px)}
.foot-cols .foot-col a{width:auto;max-width:100%}
/* os links com duas linguas (dois <a>) escondem-se um ao outro; a regra de cima nao
   pode repor o display */
html[lang^="en"] .foot-cols .foot-col a.lang-pt,html[lang^="pt"] .foot-cols .foot-col a.lang-en{display:none!important}

/* Faixa de identidade: logotipo, contactos e redes */
.foot-id{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);
  align-items:start;padding-top:clamp(24px,2.8vw,34px);border-top:1px solid var(--line-d)}
.foot-id .brand{color:var(--paper);margin-bottom:16px}
.foot-id .brand-logo{height:28px}
.foot-id .desc{font-size:.92rem;color:#9fb0be;font-weight:300;line-height:1.7;max-width:44ch;margin:0}
.foot-id-contact .static{padding-top:6px}
.foot-id-contact .hp-social{margin-top:14px}
.foot-id-contact a[href^="mailto"]{color:#e7edf2}

@media(max-width:980px){
  .foot-mission{grid-template-columns:1fr;align-items:start}
  .foot-mission-cta{justify-content:flex-start}
  .foot-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px}
  .foot-id{grid-template-columns:1fr}
}
@media(max-width:420px){
  .foot-cols{grid-template-columns:1fr}
  .foot-mission-cta .btn{width:100%;justify-content:space-between}
}

/* Menu movel: os rotulos dos submenus sao frases e podem quebrar linha */
@media(max-width:980px){
  nav.open .drop-menu{min-width:0}
  nav.open .drop-menu a{white-space:normal;line-height:1.35}
}

/* ============ RODAPE COMPACTO (2026-11-12) ============
   Tudo num bloco: marca e contactos a esquerda, as 4 colunas ao lado, e uma linha legal.
   A faixa da missao ganha cor propria (azul medio) para nao ter a cor do rodape nem a do bloco
   que vem antes. Acrescentado no fim; as regras de cima ficam. */
footer:has(.foot-mission){padding-top:0}
footer .wrap:has(>.foot-mission){display:grid;grid-template-columns:minmax(0,1.35fr) repeat(4,minmax(0,1fr));
  column-gap:clamp(18px,2.4vw,40px);align-items:start}
footer .wrap>.foot-mission{grid-column:1/-1;background:var(--ink-soft);box-shadow:0 0 0 100vmax var(--ink-soft);
  clip-path:inset(0 -100vmax);border-bottom:0;margin:0 0 clamp(22px,2.4vw,32px);
  padding:clamp(20px,2vw,28px) 0;align-items:center;gap:clamp(16px,3vw,48px)}
footer .foot-mission .eyebrow{display:none}
footer .foot-mission-h{margin:0;font-size:clamp(1.35rem,2vw,1.75rem)}
footer .foot-mission-p{margin:8px 0 0;font-size:.9rem;line-height:1.55;color:#c9d6e1}
footer .foot-mission-cta{gap:10px}
footer .foot-mission-cta .btn{padding:11px 18px;font-size:.66rem}
footer .foot-mission-cta .btn-fill{background:var(--paper);border-color:var(--paper);color:var(--ink)}
footer .foot-mission-cta .btn-fill:hover{background:var(--bronze-l);border-color:var(--bronze-l);color:var(--ink)}
footer .wrap:has(>.foot-mission)>.foot-cols,footer .wrap:has(>.foot-mission)>.foot-id{display:contents}
footer .foot-cols .foot-col{grid-row:2/4}
footer .foot-cols .foot-col:nth-child(1){grid-column:2}
footer .foot-cols .foot-col:nth-child(2){grid-column:3}
footer .foot-cols .foot-col:nth-child(3){grid-column:4}
footer .foot-cols .foot-col:nth-child(4){grid-column:5}
footer .foot-id-brand{grid-column:1;grid-row:2}
footer .foot-id-contact{grid-column:1;grid-row:3;padding-top:12px}
footer .foot-id .brand{margin-bottom:8px}
footer .foot-id .brand-logo{height:24px}
footer .foot-id .desc{font-size:.8rem;line-height:1.5;max-width:40ch}
footer .foot-cols .foot-col .foot-h,footer .foot-id-contact .foot-h{margin-bottom:8px}
footer .foot-cols .foot-col a,footer .foot-id-contact a{font-size:.82rem;padding:2px 0;line-height:1.3}
footer .foot-id-contact .static{font-size:.8rem;padding-top:2px;line-height:1.45}
footer .foot-id-contact .hp-social{margin-top:10px;gap:7px;display:flex}
footer .foot-id-contact .hp-social>a{width:28px;height:28px}
footer .foot-id-contact .hp-social svg{width:12px;height:12px}
footer .wrap:has(>.foot-mission)>.foot-legal{grid-column:1/5;grid-row:4;margin-top:18px;padding-top:10px}
footer .wrap:has(>.foot-mission)>.foot-bot{grid-column:5;grid-row:4;margin-top:18px;padding-top:10px;border-top:1px solid rgba(255,255,255,.09);
  text-align:right;font-size:.7rem;align-self:stretch}
footer .wrap:has(>.foot-mission)>.foot-bot span{color:#8b98a5}
footer .foot-legal-links a{font-size:.74rem}
footer .foot-legal-id{font-size:.68rem;text-align:left;max-width:none}
footer .foot-legal{flex-direction:column;align-items:flex-start;gap:4px}

@media(max-width:980px){
  footer .wrap:has(>.foot-mission){grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}
  footer .wrap>.foot-mission{grid-template-columns:1fr}
  footer .foot-id-brand{grid-column:1/-1;grid-row:auto}
  footer .foot-id-contact{grid-column:1/-1;grid-row:auto;padding:6px 0 14px}
  footer .foot-cols .foot-col{grid-row:auto!important;grid-column:auto!important;margin-bottom:12px}
  footer .wrap:has(>.foot-mission)>.foot-legal,footer .wrap:has(>.foot-mission)>.foot-bot{grid-column:1/-1;grid-row:auto;text-align:left}
  footer .wrap:has(>.foot-mission)>.foot-bot{border-top:0;margin-top:0;padding-top:4px}
  footer .foot-id-contact .hp-social{display:flex}
}
@media(max-width:420px){
  .foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
  footer .foot-mission-cta .btn{width:100%}
}
@media (hover:none),(max-width:620px){
  footer .foot-cols .foot-col a,footer .foot-id-contact a{min-height:36px}
}
@media(max-width:980px){
  footer .wrap>.foot-mission{order:-3}
  footer .foot-id-brand{order:-2}
  footer .foot-id-contact{order:-1}
  footer .foot-id .desc{display:none}
  footer .foot-id-contact{display:grid;grid-template-columns:auto 1fr;column-gap:20px;align-items:start}
  footer .foot-id-contact .foot-h{grid-column:1/-1}
  footer .foot-id-contact .static,footer .foot-id-contact .hp-social{grid-column:1/-1}
}

/* ===== Correcoes da revisao adversarial (2026-11-12) ===== */
/* "Voltar ao topo" (paginas de contacto) ocupa a linha toda e fica ao centro */
footer .wrap:has(>.foot-mission)>.to-top{grid-column:1/-1;justify-self:center}
/* Links com alvo de pelo menos 24px no desktop */
footer .foot-cols .foot-col a,footer .foot-id-contact a{padding:4px 0}
/* Toque: volta aos 44px de styles.v2 e os icones sociais ficam redondos */
@media (hover:none),(max-width:620px){
  footer .foot-cols .foot-col a,footer .foot-id-contact a:not(.hp-social>a){min-height:44px;padding:0}
  footer .foot-id-contact .hp-social>a{width:36px;height:36px;min-height:0}
}
/* Pagina de vagas: o CTA claro acaba em --ink-soft, a cor da faixa da missao. Ai a faixa passa a --ink */
@media screen{body:has(main>.sec.cta-lite:last-child) footer .wrap>.foot-mission{background:var(--ink);box-shadow:0 0 0 100vmax var(--ink)}}
/* Impressao: sem as barras da faixa a largura toda */
@media print{footer .wrap>.foot-mission{box-shadow:none;clip-path:none}}
/* Toque: botoes da faixa e "voltar ao topo" tambem a 44px; links legais com pelo menos 24px */
@media (hover:none),(max-width:620px){footer .foot-mission-cta .btn,footer .to-top{min-height:44px}}
footer .foot-legal-links a{padding:2px 0}
