/* Cabeçalho da página Início, isolado para não alterar o conteúdo editorial. */
.site-header{position:sticky!important;top:0!important;z-index:20!important;background:rgba(255,255,255,.94)!important;border-bottom:1px solid rgba(220,232,234,.7)!important;backdrop-filter:blur(14px)!important}
.site-header .header-inner{position:relative!important;width:min(calc(100% - 48px),1650px)!important;max-width:none!important;min-height:112px!important;display:flex!important;align-items:center!important;gap:36px!important;margin-inline:auto!important}
.site-header .brand{width:360px!important;flex:0 0 360px!important}
.site-header .brand img{display:block!important;width:100%!important;max-width:none!important;height:auto!important}
.site-header .main-nav{display:flex!important;align-items:center!important;gap:30px!important;margin-left:auto!important}
.site-header .main-nav a{position:relative!important;text-decoration:none!important;font-size:.95rem!important;white-space:nowrap!important;color:inherit!important}
.site-header .main-nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:#43b7c1;transition:right .2s ease}
.site-header .main-nav a:hover::after,.site-header .main-nav a.active::after{right:0}
.site-header .menu-toggle{display:none!important}
.site-header .header-cta{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;min-height:52px!important;padding:0 25px!important;border:1px solid #43b7c1!important;border-radius:8px!important;color:#2f8f99!important;background:rgba(255,255,255,.82)!important;font-weight:700!important;text-decoration:none!important;white-space:nowrap!important}

/* Regras finais usadas na página Início para manter altura e alinhamento. */
@media(min-width:1181px){
  .site-header .header-inner{gap:18px!important}
  .site-header .brand{width:320px!important;flex-basis:320px!important}
  .site-header .main-nav{flex:1 1 auto!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:10px 18px!important;line-height:1.2!important}
  .site-header .main-nav a{font-size:.84rem!important}
  .site-header .header-cta{min-height:44px!important;padding-inline:16px!important;font-size:.84rem!important}
}
@media(max-width:1180px){
  .site-header .header-inner{min-height:90px!important;gap:14px!important}
  .site-header .brand{width:280px!important;flex-basis:280px!important}
  .site-header .menu-toggle{display:block!important;margin-left:auto!important;padding:10px 14px!important;color:#253746!important;background:#fff!important;border:1px solid #dfe8eb!important;border-radius:8px!important}
  .site-header .main-nav{position:absolute!important;top:90px!important;left:24px!important;right:24px!important;display:none!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:12px!important;background:#fff!important;border:1px solid #dfe8eb!important;border-radius:16px!important;box-shadow:0 14px 38px rgba(20,64,91,.09)!important}
  .site-header .main-nav.open{display:flex!important}
  .site-header .main-nav a{padding:11px 12px!important}
  .site-header .main-nav a::after{display:none!important}
  .site-header .header-cta{min-height:42px!important;padding-inline:14px!important;font-size:.8rem!important}
}
@media(max-width:620px){
  .site-header .header-inner{width:min(calc(100% - 32px),1650px)!important;min-height:78px!important;gap:8px!important}
  .site-header .brand{width:180px!important;flex-basis:180px!important}
  .site-header .main-nav{top:78px!important;left:16px!important;right:16px!important}
  .site-header .header-cta{min-height:38px!important;padding-inline:10px!important;font-size:.72rem!important}
  .site-header .menu-toggle{padding:8px 10px!important;font-size:.78rem!important}
}
@media(max-width:430px){
  .site-header .brand{width:165px!important;flex-basis:165px!important}
  .site-header .header-cta{display:none!important}
  .site-header .main-nav a[href$="#contato"]{color:#2f8f99!important;font-weight:800!important}
}
@media(min-width:1181px) and (max-width:1366px){
  .site-header .header-inner{width:min(calc(100% - 32px),1650px)!important;gap:12px!important}
  .site-header .brand{width:285px!important;flex-basis:285px!important}
  .site-header .main-nav{gap:8px 12px!important}
  .site-header .main-nav a{font-size:.79rem!important}
  .site-header .header-cta{padding-inline:13px!important;font-size:.8rem!important}
}
