
:root{
  /* Ajuste fácil do amarelo da marca, se necessário */
  --brand-yellow:#ffd400; /* altere aqui para casar 100% com o logo */
  --brand-black:#0b0f1a;
  --ink:#111827;
  --muted:#6b7280;
  --radius:16px;
  --shadow: 0 10px 30px rgba(0,0,0,.12);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial,sans-serif;color:var(--ink);scroll-behavior:smooth}
img{max-width:100%;display:block}
a{color:inherit}

.container{max-width:1100px;margin:0 auto;padding:0 20px}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.skip-link:focus{left:16px;top:12px;width:auto;height:auto;background:#fff;padding:8px 12px;border-radius:8px;box-shadow:var(--shadow)}

.topbar{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #eee}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800}
.brand img{width:32px;height:32px}
nav a{margin-left:18px;text-decoration:none;font-weight:600}
nav a.btn{margin-left:12px}

.btn{display:inline-block;padding:12px 18px;border-radius:999px;border:2px solid var(--brand-black);transition:transform .15s ease, box-shadow .2s ease}
.btn-dark{background:var(--brand-black);color:#fff}
.btn-dark:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.btn-ghost{background:transparent}
.btn-ghost:hover{transform:translateY(-2px)}

.hero{position:relative;background:var(--brand-yellow);color:var(--brand-black);padding:96px 0 72px;overflow:hidden}
.hero__inner{display:grid;align-items:center}
.hero__logo{width:96px;height:auto;filter:drop-shadow(0 8px 20px rgba(0,0,0,.15));}
.hero h1{font-size:clamp(32px,5vw,52px);line-height:1.05;margin:.5rem 0}
.highlight{background:var(--brand-black);color:#fff;padding:.15em .35em;border-radius:12px}
.hero p{max-width:680px;font-size:1.125rem}
.cta{display:flex;gap:12px;margin-top:16px}

.bg-stripes{position:absolute;inset:-20%;background:linear-gradient(110deg,rgba(255,255,255,.18),rgba(255,255,255,0) 40%), repeating-linear-gradient(100deg, rgba(255,255,255,.10) 0, rgba(255,255,255,.10) 18px, transparent 18px, transparent 48px);transform:skewY(-2deg);opacity:.9; animation:pan 28s linear infinite;pointer-events:none}
@keyframes pan{from{background-position:0 0}to{background-position:1200px 0}}

.section{padding:72px 0}
.section-alt{background:#f9fafb}
.grid-2{display:grid;grid-template-columns:1.15fr .85fr;gap:32px}
@media (max-width:900px){.grid-2{grid-template-columns:1fr} .cta{flex-wrap:wrap}}

.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}
.card.product{transition:transform .25s ease, box-shadow .25s ease}
.card.product:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(0,0,0,.18)}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-top:20px}

.stat{display:grid;grid-template-columns:1fr;row-gap:10px;text-align:center}
.stat .stat__value{font-size:40px;font-weight:800}
.stat .divider{height:1px;background:#e5e7eb;margin:8px 0}
.stat .stat__label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700}

.bullets{margin:12px 0 0 0;padding-left:18px}
.bullets li{margin:.35rem 0}

.partners{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-top:18px}
.partner{background:#fff;border:1px dashed #e5e7eb;border-radius:12px;padding:16px;text-align:center;font-weight:700;letter-spacing:.02em;box-shadow:var(--shadow);transition:transform .2s ease}
.partner:hover{transform:translateY(-4px)}

.muted{color:var(--muted)}
.note{display:block;margin-top:8px}
.tiny{font-size:.85rem}

.form label{display:grid;gap:6px;margin-bottom:12px;font-weight:600}
.form input,.form textarea{border:1px solid #e5e7eb;border-radius:10px;padding:12px;font-size:1rem;outline:none}
.form input:focus,.form textarea:focus{border-color:var(--brand-black)}

.footer{background:var(--brand-black);color:#fff;padding:28px 0;text-align:center}

/* Reveal on scroll */
.reveal-up{opacity:0;transform:translateY(18px);transition:opacity .7s ease, transform .7s ease}
.reveal-up.visible{opacity:1;transform:translateY(0)}
.delay-1{transition-delay:.12s}
.delay-2{transition-delay:.24s}
.delay-3{transition-delay:.36s}

.partners.logos{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
.partner-logo{width:100%; height:auto; filter:grayscale(100%) contrast(90%); opacity:.9; transition:filter .2s ease, opacity .2s ease, transform .2s ease}
.partner-logo:hover{filter:grayscale(0%); opacity:1; transform:translateY(-4px)}
/* --- Brand cards texto puro (sem ícone) --- */
.brand-card{
  background:#fff;
  border:1px solid #B0B0B0;           /* metal */
  border-radius:12px;
  min-height:90px;
  padding:16px 18px;
  box-shadow: 0 6px 24px rgba(3,10,24,.08);
  display:flex;
  align-items:center;
  justify-content:center;              /* centraliza horizontal e vertical */
  text-align:center;
  transition: transform .25s cubic-bezier(.4,0,.2,1),
              box-shadow .25s cubic-bezier(.4,0,.2,1),
              background-color .25s cubic-bezier(.4,0,.2,1),
              border-color .25s cubic-bezier(.4,0,.2,1),
              color .25s cubic-bezier(.4,0,.2,1);
  cursor:default;
}

.brand-card:hover{
  background:#FFD400 !important;       /* amarelo Engitune */
  border-color:#FFD400 !important;
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 12px 32px rgba(3,10,24,.15);
}

.brand-name{
  font-family: Montserrat, Roboto, sans-serif;
  text-transform: uppercase;
  letter-spacing:.3px;
  font-weight:800;
  font-size:.95rem;
  color:#030A18;                       /* navy: mantém contraste no hover */
}

.brand-card:focus-visible{
  outline:3px solid #FFD400;
  outline-offset:2px;
}

@media (prefers-reduced-motion: reduce){
  .brand-card{ transition:none }
}

#rotating-text {
  display: inline-block;
  opacity: 1;
  transition: opacity 0.6s ease-in-out;
}
#rotating-text.fade-out {
  opacity: 0;
}

.card.product span {
  font-size: 2rem;
  color: #030A18; /* navy */
  margin-bottom: 12px;
  transition: transform .3s ease, color .3s ease;
}

.card.product:hover span {
  transform: scale(1.1);
  color: #FFD400; /* amarelo */
}

