/* PSNE: ajuste fino do cabeçalho, para o menu não colidir com a logo
   nem quebrar linha quando o rótulo da região é longo. */
/* PSNE: cabeçalho padrão, igual em todas as páginas.
   Altura fixa, logo do mesmo tamanho e na mesma posição, itens centralizados.
   Sem isso cada página monta a barra com medidas próprias. */
header .wrap,header .nav,header .std-nav{max-width:none;margin-left:auto;margin-right:auto}
header .nav,header .std-nav{height:78px;padding-top:0;padding-bottom:0;padding-left:40px;padding-right:40px;align-items:center;gap:20px}
.nav-logo,.std-logo{height:46px !important;width:auto;flex:0 0 auto}
header .nav>a:first-child,header .std-nav>a:first-child{display:flex;align-items:center;flex:0 0 auto}
.nav-links,.std-links{gap:20px;flex-wrap:nowrap}
.nav-links a,.std-links a,.nav-a{font-size:13.5px;white-space:nowrap}
.nav-right{gap:12px;flex-shrink:0}
.lang{display:flex;flex-wrap:nowrap}
.lang button{padding:4px 5px}
.region-dd{margin-right:4px}
.region-name{font-size:12.5px}
.nav-cta,.std-cta{white-space:nowrap;padding:9px 18px;font-size:12.5px}
@media (max-width:1560px){.nav-links a,.std-links a,.nav-a{font-size:13px}.nav-links,.std-links{gap:14px}}
@media (max-width:1520px){.region-name{display:none}}
@media (max-width:1240px){.nav-logo,.std-logo{height:42px !important}}
@media (max-width:1100px){.nav-links,.std-links{gap:13px}.nav-links a,.std-links a,.nav-a{font-size:12.5px}}
@media (max-width:1240px){header .nav-links:not(.open),header .std-links:not(.open){display:none}}

/* Abertura das páginas internas: título e texto lado a lado, ocupando a
   largura, em vez de uma coluna estreita com a direita vazia. */
.phero{padding:108px 0 36px !important}
.phero-in{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:44px;align-items:end}
.phero-in .kick{grid-column:1/-1;justify-self:start;width:fit-content;margin-bottom:6px}
.phero h1{max-width:none !important;font-size:clamp(30px,3.2vw,44px) !important;margin-top:0 !important}
.phero p{margin-top:0 !important;max-width:54ch;padding-bottom:4px}
@media (max-width:980px){.phero-in{grid-template-columns:1fr;gap:16px}.phero p{margin-top:8px}}

.phero + .sec,.phero + .sec2{padding-top:26px !important}

/* Blocos de chamada no fim das páginas, sem sobra vertical */
.cta2{padding:56px 0 64px !important}
.sec2{padding:56px 0 !important}

/* Cabeçalho das seções internas: título à esquerda, texto à direita,
   em vez de uma coluna estreita com a metade direita vazia. */
.sec-head,.sec2-h{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:44px;align-items:end;max-width:none !important;margin-bottom:40px !important}
.sec-head .kick,.sec2-h .kick{grid-column:1/-1;justify-self:start;width:fit-content}
.sec-head h2,.sec2-h h2{margin-bottom:0}
.sec-head p,.sec2-h p{margin:0 0 4px;max-width:54ch}
@media (max-width:980px){.sec-head,.sec2-h{grid-template-columns:1fr;gap:14px}}

/* Telas estreitas: tudo cabe em uma linha só, com os itens compactos. */
@media (max-width:660px){
  header .nav,header .std-nav{gap:8px;flex-wrap:nowrap;height:66px;padding-left:22px;padding-right:22px}
  .nav-logo,.std-logo{height:36px !important}
  .lang button{padding:3px 4px;font-size:11px}
  .nav-cta,.std-cta{padding:8px 13px;font-size:12px}
  .emg-fab{padding:8px 10px}
}
@media (max-width:430px){
  .nav-logo,.std-logo{height:32px !important}
  .lang button{padding:3px 3px;font-size:10.5px}
  .nav-cta,.std-cta{padding:7px 11px;font-size:11.5px}
}

/* Abaixo de 520px o botão Contato sai do cabeçalho, porque Contato já está
   dentro do menu. Ficam logo, região, emergência, idiomas e o menu. */
@media (max-width:520px){.nav-cta,.std-cta{display:none}}
@media (max-width:380px){.nav-logo,.std-logo{height:30px !important}.lang button{padding:3px 2px}header .nav,header .std-nav{gap:6px}}


@media (max-width:400px){header .wrap,header .nav,header .std-nav{padding-left:14px;padding-right:14px}header .nav,header .std-nav{gap:5px}.lang button{padding:3px 2px;font-size:10px}}

/* Ícone de menu e painel, na faixa em que os links do topo recolhem */
.menu-btn{display:none;background:none;border:none;cursor:pointer;padding:8px 4px;flex-direction:column;gap:5px;flex:0 0 auto}
.menu-btn span{display:block;width:22px;height:2px;background:#EAF2FB;border-radius:2px;transition:.22s}
.menu-btn.on span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menu-btn.on span:nth-child(2){opacity:0}
.menu-btn.on span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media (max-width:1240px){
  .menu-btn{display:flex}
  header .burger,header .std-burger{display:flex !important}
  header .nav-links.open,header .std-links.open{display:flex !important;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:flex-start;background:rgba(6,11,22,.98);backdrop-filter:blur(18px);padding:22px 40px;gap:18px;border-bottom:1px solid rgba(120,150,190,.16);z-index:40}
  header .nav-links.open a,header .std-links.open a{font-size:15px}
}
@media (max-width:660px){header .nav-links.open,header .std-links.open{padding:20px 22px}}
@media (max-width:420px){
  .cta-com,.cta-emg{padding:8px 9px}
  .region-btn{padding:6px 8px}
  .menu-btn{padding:8px 2px}
  .menu-btn span{width:20px}
}
@media (max-width:400px){
  .lang button{padding:3px 1px;font-size:9.5px}
  .cta-com,.cta-emg{padding:8px 8px;gap:0}
  .region-btn{padding:6px 6px;gap:5px}
  .nav-logo,.std-logo{height:28px !important}
  header .nav,header .std-nav{gap:4px;padding-left:12px;padding-right:12px}
}
/* Em telas muito estreitas o seletor de região sai do topo, a região
   continua sendo detectada por IP e pode ser trocada em telas maiores. */
@media (max-width:365px){.region-dd{display:none}}
