/* Cabeçalho global: a home é a fonte visual para todas as rotas. */
.site-header{position:fixed;inset:0 0 auto;z-index:100;height:92px;min-height:92px;color:#fff;isolation:isolate;background:transparent!important;border:0;border-bottom:1px solid transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;transition:border-color .55s cubic-bezier(.4,0,.2,1),box-shadow .55s cubic-bezier(.4,0,.2,1)}
.site-header::before{content:'';position:absolute;inset:0;z-index:-1;height:92px;background:rgba(248,247,244,.96);opacity:0;box-shadow:none;backdrop-filter:blur(14px) saturate(125%);-webkit-backdrop-filter:blur(14px) saturate(125%);transition:opacity .55s cubic-bezier(.4,0,.2,1);pointer-events:none}
.site-header.is-scrolled{height:92px;min-height:92px;color:#143c52;border-bottom-color:rgba(20,60,82,.14);box-shadow:0 10px 32px rgba(7,19,26,.12)}
.site-header.is-scrolled::before{opacity:1}
.site-header .header{position:relative;z-index:1;display:flex;height:92px;min-height:92px;align-items:center;justify-content:space-between;gap:32px}
.site-header .brand{position:relative;top:8px;z-index:103;display:block;flex:0 0 300px;width:300px;height:112px}
.site-header .brand img{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;object-fit:cover;object-position:center;mix-blend-mode:normal!important;filter:none!important;border-radius:0;transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1)}
.site-header .brand-logo-light{opacity:1;transform:translateY(0)}
.site-header .brand-logo-dark{opacity:0;transform:translateY(-3px)}
.site-header.is-scrolled .brand-logo-light{opacity:0;transform:translateY(3px)}
.site-header.is-scrolled .brand-logo-dark{opacity:1;transform:translateY(0)}
.site-header .nav{display:flex;align-items:center;gap:24px;margin-left:auto}
.site-header .nav>a{position:relative;color:#fff;font-size:13px;font-weight:600;line-height:1.2;letter-spacing:.11em;white-space:nowrap;text-decoration:none;text-shadow:0 2px 10px rgba(0,0,0,.58);text-transform:uppercase;transition:color .3s ease,text-shadow .3s ease}
.site-header .nav>a::after{content:'';position:absolute;right:100%;bottom:-8px;left:0;height:1px;background:currentColor;transition:right .35s cubic-bezier(.22,1,.36,1)}
.site-header .nav>a:hover,.site-header .nav>a:focus-visible{color:#d8e7ee}
.site-header .nav>a:hover::after,.site-header .nav>a:focus-visible::after,.site-header .nav>a[aria-current=page]::after{right:0}
.site-header.is-scrolled .nav>a{color:#143c52;text-shadow:none}
.site-header.is-scrolled .nav>a:hover,.site-header.is-scrolled .nav>a:focus-visible{color:#000}
.site-header .header-social{display:flex;align-items:center;gap:9px;margin-left:5px}
.site-header .header-social a{display:grid;width:34px;height:34px;place-items:center;border:1px solid rgba(255,255,255,.42);border-radius:50%;color:#fff;text-decoration:none;transition:color .3s ease,background-color .3s ease,border-color .3s ease,transform .3s ease}
.site-header .header-social a:hover,.site-header .header-social a:focus-visible{color:#143c52;background:#fff;border-color:#fff;transform:translateY(-2px)}
.site-header .header-social svg{display:block;width:16px;height:16px;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.site-header .header-social svg path{fill:currentColor;stroke:none}
.site-header .header-social svg rect,.site-header .header-social svg circle{fill:none;stroke:currentColor}
.site-header.is-scrolled .header-social a{color:#143c52;border-color:rgba(20,60,82,.34)}
.site-header.is-scrolled .header-social a:hover,.site-header.is-scrolled .header-social a:focus-visible{color:#fff;background:#143c52;border-color:#143c52}
.site-header .menu{display:none;border:0;background:transparent;color:inherit;cursor:pointer}
body.menu-open,body.menu-lock{overflow:hidden!important}

/* Enquadramento global do logo sem ondas no rodapé. */
.footer .footer-logo{display:block;width:300px;height:112px;overflow:hidden}
.footer .footer-logo img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center}

@media(max-width:1100px){
  .site-header .brand{top:5px;flex-basis:250px;width:250px;height:94px}
  .site-header .nav{gap:14px}
  .site-header .header-social{display:none}
}

@media(max-width:900px){
  .site-header,.site-header.is-scrolled{height:78px!important;min-height:78px!important}
  .site-header::before,.site-header.is-scrolled::before,.site-header.menu-open::before{height:78px!important;min-height:78px!important}
  .site-header .header{height:78px!important;min-height:78px!important}
  .site-header .brand{top:0;flex:0 0 205px;width:205px;height:78px}
  .site-header .menu{position:relative;z-index:104;display:grid!important;flex:0 0 44px;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;place-items:center;border:1px solid rgba(255,255,255,.35)!important;border-radius:50%;background:rgba(20,60,82,.22)!important;color:#fff!important;font-size:22px!important;line-height:1;text-shadow:none!important;opacity:1!important;transform:none!important}
  .site-header .menu span{font-size:inherit;line-height:1}
  .site-header.is-scrolled .menu{border-color:#143c52!important;background:#143c52!important;box-shadow:0 5px 16px rgba(7,19,26,.18)}
  .site-header .nav{position:fixed;inset:0;z-index:102;display:flex!important;width:100vw!important;height:100dvh!important;min-height:100dvh!important;margin:0;padding:108px 32px 36px;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:0;background:#07131a!important;color:#fff;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-12px);transition:opacity .35s ease,visibility .35s ease,transform .45s cubic-bezier(.22,1,.36,1)}
  .site-header.menu-open{height:100dvh!important;min-height:100dvh!important}
  .site-header.menu-open .nav{opacity:1;visibility:visible;pointer-events:auto;transform:none}
  .site-header.menu-open .menu{position:fixed;top:17px;right:max(18px,calc((100vw - 1280px)/2));border-color:#143c52!important;background:#143c52!important}
  .site-header .nav>a,.site-header.is-scrolled .nav>a{width:100%;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.16);color:#fff;font-size:16px;letter-spacing:.11em;text-shadow:none}
  .site-header .nav>a::after{display:none}
  .site-header .header-social,.site-header.is-scrolled .header-social{display:flex;margin:26px 0 0;gap:12px}
  .site-header .header-social a,.site-header.is-scrolled .header-social a{display:grid;width:44px;height:44px;place-items:center;border-color:rgba(255,255,255,.3);color:#fff}
  .site-header.menu-open .brand-logo-light{opacity:1;transform:none}
  .site-header.menu-open .brand-logo-dark{opacity:0}
  .footer .footer-logo{width:270px;height:101px}
}

@media(max-width:420px){
  .site-header,.site-header.is-scrolled{height:72px!important;min-height:72px!important}
  .site-header::before,.site-header.is-scrolled::before,.site-header.menu-open::before{height:72px!important;min-height:72px!important}
  .site-header .header{height:72px!important;min-height:72px!important}
  .site-header .brand{flex-basis:168px;width:168px;height:64px}
  .site-header.menu-open .menu{top:14px;right:16px}
  .footer .footer-logo{width:235px;height:88px}
}

@media(prefers-reduced-motion:reduce){
  .site-header,.site-header::before,.site-header .brand img,.site-header .nav,.site-header .nav>a,.site-header .nav>a::after,.site-header .header-social a{transition:none}
}
