*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
/* O runtime (support.js) aplica height:100% em html/body/#dc-root/.sc-host, o que
   restringe o position:sticky do menu à primeira dobra. Estas regras liberam a altura. */
html,body{height:auto !important;min-height:100%}
#dc-root,#dc-root>.sc-host{height:auto !important;min-height:100vh}
/* Compensa o menu fixo ao navegar por âncoras (#secao) */
[id]{scroll-margin-top:132px}
body{font-family:'Manrope',system-ui,sans-serif;-webkit-font-smoothing:antialiased;background:#f4f6f7;color:#08191f}
::selection{background:#16a6c4;color:#fff}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
[data-reveal]{transition:opacity .75s cubic-bezier(.2,.8,.2,1),transform .75s cubic-bezier(.2,.8,.2,1)}
[data-reveal].rv-hidden{opacity:0;transform:translateY(24px)}
.nav-toggle-input{display:none}
.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:26px;height:20px;cursor:pointer}
.nav-burger span{display:block;height:2px;background:#00222f;border-radius:2px;transition:transform .25s,opacity .2s}
.nav-mobile-menu{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:#f4f6f7;padding:8px 20px 20px;box-shadow:0 14px 30px rgba(0,34,47,.12);border-bottom:1px solid rgba(0,34,47,.08)}
.nav-mobile-menu a{padding:13px 2px;border-bottom:1px solid rgba(0,34,47,.06)}
.nav-toggle-input:checked ~ .nav-mobile-menu{display:flex}
.nav-toggle-input:checked ~ .nav-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle-input:checked ~ .nav-burger span:nth-child(2){opacity:0}
.nav-toggle-input:checked ~ .nav-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
@media(max-width:960px){
  [data-res~="g4"]{grid-template-columns:repeat(2,1fr) !important}
  [data-res~="g3"]{grid-template-columns:repeat(2,1fr) !important}
}
@media(max-width:640px){
  [data-res~="g4"],[data-res~="g3"],[data-res~="g2"]{grid-template-columns:1fr !important}
  [data-res~="hnav"]{display:none !important}
  .nav-burger{display:flex !important}
  footer{padding:36px 20px 24px !important}
  nav{padding:14px 20px !important}
}
