/* Correções técnicas compartilhadas pelas páginas HTML (home, quem somos, carreiras). Antes o menu mobile só
   existia na home; em Quem somos e Carreiras o menu sumia abaixo de 900px e não havia como navegar. */
html{scroll-padding-top:64px} /* âncora vinda de outra página não fica atrás do header fixo */
.menu-btn{display:none;min-height:36px;background:none;border:1px solid currentColor;color:inherit;border-radius:999px;padding:7px 12px;font:500 12px/1 var(--f-mono);cursor:pointer}
@media (max-width:900px){.menu-btn{display:inline-block}}
.mnav{position:fixed;inset:0;z-index:70;background:rgba(11,10,7,.82);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);color:var(--paper);padding:calc(70px + env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) 30px max(20px,env(safe-area-inset-left,0px));display:grid;align-content:start;gap:6px;overflow:auto;overscroll-behavior:contain}
.mnav[hidden]{display:none}
.mnav a{font-family:var(--f-display);font-size:40px;line-height:1.15;text-decoration:none}
.mnav .sub{display:grid;gap:2px;padding:6px 0 10px 16px;border-left:1px solid #3A3426;margin:4px 0 8px}
.mnav .sub a{font-family:var(--f-ui);font-size:18px;line-height:1.6}
.mnav .sub a small{display:block;font-size:13px;color:#9A9483;line-height:1.3;margin-bottom:6px}
.mnav .x{position:absolute;top:calc(14px + env(safe-area-inset-top,0px));right:max(16px,env(safe-area-inset-right,0px));width:44px;height:44px;border-radius:50%;border:1px solid #3A3426;background:none;color:var(--paper);font-size:24px;cursor:pointer}
/* Linha de rótulos (grid4): no celular a grade tem 2 colunas e o 2º rótulo, preso nas colunas 3-4, sobrepunha o 1º. */
@media (max-width:760px){.grid4>.label+.label{grid-column:1/-1!important;margin-top:8px}}

/* Menu principal: o mesmo em todas as páginas (antes cada página tinha nomes e itens diferentes). */
.nav{display:flex;align-items:center;gap:22px}
.nav > a,.nav .dd > button{font:inherit;font-size:15px;color:inherit;background:none;border:0;padding:6px 0;cursor:pointer;text-decoration:none}
.nav > a:hover,.nav .dd > button:hover{text-decoration:underline;text-underline-offset:4px}
.dd{position:relative}
.dd > button::after{content:"";display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-3px) rotate(45deg);margin-left:8px;transition:transform .2s}
.dd.open > button::after{transform:translateY(1px) rotate(-135deg)}
.mega{position:absolute;top:calc(100% + 14px);left:50%;transform:translate(-50%,8px);width:min(760px,92vw);background:#0E0C08;border:1px solid #3A3426;border-radius:16px;padding:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;opacity:0;visibility:hidden;transition:opacity .2s,transform .25s,visibility 0s .25s;box-shadow:0 30px 80px rgba(0,0,0,.55);color:var(--paper)}
.dd.open .mega{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .2s,transform .25s}
.mega a{display:grid;gap:8px;align-content:start;padding:16px;border-radius:10px;text-decoration:none;border:1px solid transparent;transition:background .2s,border-color .2s}
.mega a:hover,.mega a:focus-visible{background:#1A1710;border-color:#3A3426;text-decoration:none}
.mega .mk{font:500 11px/1 var(--f-mono);letter-spacing:.07em;text-transform:uppercase;color:var(--sun)}
.mega a.k .mk{color:#2FB6A9}
.mega strong{font-family:var(--f-display);font-weight:400;font-size:32px;line-height:1}
.mega span.ds{color:#BDB59E;font-size:14px;line-height:1.45}
.mega ul{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:4px;font-size:13px;color:#D9D2BF}
.mega li::before{content:"· ";color:var(--sun)}
.mega .go{font:500 12px var(--f-mono);color:var(--paper);margin-top:4px}
.mega{background:linear-gradient(150deg,rgba(30,27,20,.72),rgba(14,12,8,.62));-webkit-backdrop-filter:blur(26px) saturate(160%);backdrop-filter:blur(26px) saturate(160%);border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 30px 80px -20px rgba(0,0,0,.7),0 60px 140px -50px rgba(248,190,0,.25)}
.mega a{background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.06);transition:transform .35s cubic-bezier(.2,.8,.2,1),background .2s,border-color .2s}
.mega a:hover,.mega a:focus-visible{transform:translateY(-4px);background:linear-gradient(160deg,rgba(255,255,255,.10),rgba(255,255,255,.02));border-color:rgba(248,190,0,.45)}
.nav a[aria-current="page"]{color:var(--sun)}.hdr[data-tone="sun"] .nav a[aria-current="page"]{color:var(--sun-ink);text-decoration:underline}
.mnav .mk{font:500 13px/1 var(--f-mono);text-transform:uppercase;letter-spacing:.07em;color:#9A9483;margin-top:10px}
.mnav a[aria-current="page"]{color:var(--sun)}
.menu-btn,.mnav a,.mnav .x{transition:transform .16s ease,color .16s ease}
.mnav a{min-height:44px;padding:6px 0}
.mnav a:active{transform:translateX(6px) scale(.98);color:var(--sun)}
.menu-btn:active,.mnav .x:active{transform:scale(.94)}
.mnav a:focus-visible{outline:2px solid var(--sun);outline-offset:3px}
.site-footer{display:block;border-top:1px solid var(--line);background:var(--ink);color:var(--paper);padding-block:48px 28px}
.footer-grid{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:32px}
.footer-brand{font-size:22px;letter-spacing:-.03em;text-decoration:none}
.footer-grid p{color:var(--mute);max-width:32ch;margin-top:12px;font-size:15px}
.footer-grid nav{display:grid;align-content:start;gap:10px;font-size:15px}
.footer-grid h2{font-family:var(--f-ui);font-size:15px;font-weight:600;color:var(--paper);margin:0 0 6px}
.footer-grid a{color:inherit;text-decoration:none;min-height:28px}
.footer-grid a:hover{text-decoration:underline;text-underline-offset:4px;color:var(--sun)}
.footer-legal{margin-top:36px;padding-top:20px;border-top:1px solid var(--line);color:var(--mute);font-size:13px}
.back-home{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border:1px solid currentColor;border-radius:999px;text-decoration:none}
.back-home:active{transform:scale(.97)}
@media(max-width:900px){
  .nav{display:none}
  #hero{height:160svh}
  #eras{height:160svh}
  .cta-pin .cta{padding-right:64px}
  #processo{height:220svh}
  .rv{transition-duration:.35s!important;transition-delay:0s!important}
  .h1 .w{transition-duration:.4s;transition-delay:0s}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
  .footer-grid>div{grid-column:1/-1}
  .footer-grid nav a{min-height:44px;display:flex;align-items:center}
}
@media(prefers-reduced-motion:reduce){.menu-btn,.mnav a,.mnav .x{transition:none}}
