html { scroll-behavior: smooth; }
body { font-family: 'Inter', sans-serif; }
h1, h2, h3, .font-display { font-family: 'Syne', sans-serif; }

svg.icon {
  width: 1em;
  height: 1em;
  display: inline-block;
  vertical-align: -0.125em;
  flex-shrink: 0;
}

.nav-link { color: rgba(255,255,255,.85); transition: color .2s ease; }
.nav-link:hover { color: #F06522; }

/* Header adaptavel: transparente sobre o hero escuro / solido branco ao rolar (ou sempre nas paginas internas) */
#site-header {
  background-color: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(255,255,255,.08);
  transition: background-color .35s ease, border-color .35s ease, backdrop-filter .35s ease;
}
#site-header.is-scrolled {
  background-color: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom-color: rgba(26,47,51,.08);
}

#site-header .logo-dark { display: flex; }
#site-header .logo-light { display: none; }
#site-header.is-scrolled .logo-dark { display: none; }
#site-header.is-scrolled .logo-light { display: flex; }

#site-header .nav-link { color: rgba(255,255,255,.9); }
#site-header.is-scrolled .nav-link { color: rgba(26,47,51,.8); }
#site-header.is-scrolled .nav-link:hover { color: #F06522; }

#site-header #menu-btn { color: #fff; border-color: rgba(255,255,255,.35); }
#site-header.is-scrolled #menu-btn { color: #1A2F33; border-color: rgba(26,47,51,.15); }

#mobile-menu { transition: max-height .35s ease; }

.card-lift { transition: transform .25s ease, box-shadow .25s ease; }
.card-lift:hover { transform: translateY(-6px); box-shadow: 0 20px 40px -12px rgba(26,47,51,.15); }

.fade-up { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.fade-up.is-visible { opacity: 1; transform: translateY(0); }
@media (prefers-reduced-motion: reduce) {
  .fade-up { opacity: 1 !important; transform: none !important; transition: none !important; }
}
