/* ===================================================================
   mi.css: camada visual compartilhada do site (identidade da home).

   Tudo escopado em .mi (um wrapper por pagina: <main class="mi"> ou
   <div class="mi">). Carregue DEPOIS de base.css:
     css: ['/css/base.css', '/css/mi.css', '/css/<pagina>.css']
   Sem Fraunces nem Inter: Helvetica Neue. Sem style inline: toda variacao
   e classe. Componentes de markup: scripts/lib/mi-ui.mjs. Guia: docs/design-mi.md.
   =================================================================== */

/* ---------- Tokens ---------- */

:root {
  /* cor */
  --mi-ink: #0a0a0a;
  --mi-ink-2: #2b2b2b;
  --mi-paper: #fff;
  --mi-soft: #f0f0f0;
  --mi-text: #1a1a1a;
  --mi-muted: #5f5f5f;
  --mi-faint: #7a7a7a;
  --mi-on-dark: #b3b3b3;
  --mi-line: #dadada;
  --mi-line-soft: #e2e2e2;
  --mi-line-dark: #3a3a3a;
  --mi-danger: #b42318;
  --mi-ok: #22c55e;
  /* fonte */
  --mi-font: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  /* espacamento (escala 4) e gutter/secao responsivos */
  --mi-s1: 4px;
  --mi-s2: 8px;
  --mi-s3: 12px;
  --mi-s4: 16px;
  --mi-s5: 24px;
  --mi-s6: 32px;
  --mi-s7: 48px;
  --mi-s8: 72px;
  --mi-gutter: clamp(20px, 5vw, 64px);
  --mi-sec-y: clamp(64px, 9vw, 120px);
  --mi-wrap: 1180px;
  --mi-prose: 720px;
  /* raios */
  --mi-r-sm: 10px;
  --mi-r-md: 18px;
  --mi-r-lg: 28px;
  --mi-r-xl: 36px;
  --mi-r-pill: 999px;
  /* sombras */
  --mi-sh-card: 0 1px 2px rgba(0, 0, 0, .03), 0 12px 40px rgba(0, 0, 0, .05);
  --mi-sh-btn: 0 10px 24px rgba(0, 0, 0, .18);
  /* alvo minimo de toque */
  --mi-hit: 44px;
  /* Breakpoints (media query nao le var(); valores de referencia):
     --mi-bp-sm 640px (mobile), --mi-bp-md 960px (tablet), --mi-bp-lg 1180px (conteudo). */
  --mi-bp-sm: 640px;
  --mi-bp-md: 960px;
  --mi-bp-lg: 1180px;
}

html:has(.mi),
body:has(.mi) {
  overflow-x: clip;
  scroll-behavior: smooth;
}

.mi {
  --mi-hfont: 'Helvetica Neue', 'HelveticaNeue-Medium', Helvetica, Arial, sans-serif;
  background: #fff;
  color: #0a0a0a;
  font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
  font-feature-settings: normal;
  line-height: normal;
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
.mi *,
.mi *::before,
.mi *::after { box-sizing: border-box; }
.mi h1,
.mi h2,
.mi h3 {
  font-family: var(--mi-hfont);
  font-feature-settings: normal;
  font-weight: 500;
  margin: 0;
}
.mi p { margin: 0; }
.mi picture { display: contents; }
/* com o picture "transparente", o <source> viraria item flex vazio (gap extra) */
.mi source { display: none; }
.mi a { color: #0a0a0a; text-decoration: underline; text-underline-offset: 3px; }
.mi a:hover { color: #5f5f5f; }
.mi summary { list-style: none; }
.mi summary::-webkit-details-marker { display: none; }
.mi input,
.mi textarea,
.mi button { font-family: inherit; }
.mi ::placeholder { color: #757575; opacity: 1; }
.mi b,
.mi strong { font-weight: bolder; }
.mi section[id] { scroll-margin-top: 60px; }

@keyframes tl-ping { 0% { transform: scale(1); opacity: .7 } 75%, 100% { transform: scale(2.4); opacity: 0 } }
@keyframes tl-float { 0%, 100% { transform: translateY(0) rotate(0deg) } 50% { transform: translateY(-34px) rotate(-3deg) } }
@keyframes tl-marquee-l { from { transform: translateX(0) } to { transform: translateX(-50%) } }
@keyframes tl-marquee-r { from { transform: translateX(-50%) } to { transform: translateX(0) } }

/* ---------- Pecas reutilizaveis ---------- */

.mi-pill {
  display: inline-flex;
  flex: none;
  align-items: center;
  gap: 8px;
  height: 34px;
  padding: 0 14px 0 12px;
  border: 1.5px solid #d0d0d0;
  border-radius: 999px;
  background: #fff;
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 0;
  color: #8F8F8F;
  align-self: flex-start;
}
.mi-pill--16 { font-size: 16px; }
.mi-pill--center { align-self: center; }
.mi-pill--dark { border-color: #3a3a3a; background: #0a0a0a; color: #a3a3a3; }
.mi-pill--ink { color: #000; }

.mi .mi-cta {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 58px;
  padding: 0 5px 0 28px;
  border-radius: 999px;
  background: #0a0a0a;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  transition: background .35s ease, box-shadow .35s ease;
}
.mi .mi-cta:hover { background: #2b2b2b; color: #fff; box-shadow: 0 10px 24px rgba(0, 0, 0, .18); }
.mi-cta__c {
  flex: none;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: #2e2e2e;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform .45s cubic-bezier(.16, 1, .3, 1), background .35s ease;
}
.mi-cta:hover .mi-cta__c { transform: rotate(-45deg) scale(1.06); }
.mi .mi-cta--light { background: #fff; color: #0a0a0a; }
.mi .mi-cta--light:hover { background: #e9e9e9; color: #0a0a0a; }
.mi-cta--light .mi-cta__c { background: #d0d0d0; }
.mi .mi-cta--md { min-height: 56px; }
.mi-cta--md .mi-cta__c { width: 46px; height: 46px; }
.mi .mi-cta--sm { min-height: var(--mi-hit); padding: 0 4px 0 20px; gap: 12px; font-size: 15px; }
.mi-cta--sm .mi-cta__c { width: 36px; height: 36px; }

.mi-online {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 17px;
  line-height: 1.4;
  color: #7D7D7D;
  white-space: nowrap;
  font-weight: 500;
}
.mi-online__dot { position: relative; flex: none; width: 10px; height: 10px; display: inline-flex; }
.mi-online__dot::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: #22c55e;
  animation: tl-ping 1.6s cubic-bezier(0, 0, .2, 1) infinite;
}
.mi-online__dot::after { content: ''; position: relative; width: 10px; height: 10px; border-radius: 50%; background: #22c55e; }

.mi-lead { font-size: 19px; line-height: 1.65; color: #5f5f5f; text-wrap: pretty; }
.mi-lead strong { font-weight: 600; color: #0a0a0a; }
.mi-sec { padding: clamp(64px, 9vw, 120px) clamp(20px, 5vw, 64px); }
.mi-wrap { max-width: 1180px; margin: 0 auto; }
.mi-h2 { letter-spacing: -.025em; line-height: 1.08; text-wrap: balance; }
.mi-head { display: flex; flex-direction: column; gap: 22px; max-width: 820px; }
.mi-head--center { align-items: center; text-align: center; margin: 0 auto; max-width: 1180px; }
/* ---------- 01b Faixas ---------- */

.mi-faixas {
  position: relative;
  z-index: 2;
  height: clamp(160px, 16vw, 220px);
  margin-top: calc(clamp(160px, 16vw, 220px) / -2 - 12px);
  overflow: hidden;
  pointer-events: none;
}
.mi-faixa {
  position: absolute;
  left: -10%;
  right: -10%;
  top: 50%;
  transform: translateY(-50%) rotate(-3.6deg);
  background: #0a0a0a;
  padding: 13px 0;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, .22), 0 2px 3px rgba(0, 0, 0, .12);
  overflow: hidden;
}
.mi-faixa--back { filter: blur(1.5px); transform: translateY(-50%) rotate(3.2deg); }
.mi-faixa__track { display: flex; align-items: center; width: max-content; animation: tl-marquee-l 40s linear infinite; }
.mi-faixa--back .mi-faixa__track { animation: tl-marquee-r 46s linear infinite; }
.mi-faixa__group { display: flex; align-items: center; gap: 36px; padding-right: 36px; flex: none; height: 24px; }
.mi-faixa__item { display: flex; align-items: center; gap: 8px; flex: none; white-space: nowrap; line-height: 1; }
.mi-faixa__item span { font-size: clamp(17px, 1.7vw, 22px); font-weight: 500; letter-spacing: -.01em; line-height: 1; color: #fff; }
.mi-faixa__item span:first-child { font-weight: 600; }
.mi-faixa__icon { flex: none; display: block; width: 22px; height: auto; opacity: .55; }
@media (max-width: 640px) {
  .mi-faixa__icon { width: 17px; }
}

/* ---------- Campos, radios e botao de envio ---------- */

.mi-field { display: flex; flex-direction: column; gap: 8px; }
.mi-field__t,
:is(.mi-form, .mi-fields) legend { font-size: 18px; font-weight: 500; display: flex; align-items: center; gap: 10px; }
:is(.mi-form, .mi-fields) legend { padding: 0; margin-bottom: 10px; }
.mi-field__t--tall,
:is(.mi-form, .mi-fields) legend.mi-field__t--tall { line-height: 1.5; }
.mi-field__t--tall > span:last-child { flex: 1; min-width: 0; }
.mi-field__sub { display: block; font-weight: 400; color: #7a7a7a; }
.mi-field__ic {
  flex: none;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: #f0f0f0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.mi-input,
.mi-textarea {
  width: 100%;
  border: 1px solid #dcdcdc;
  border-radius: 10px;
  color: #0a0a0a;
  background: #fff;
  outline: none;
}
.mi-input { height: 50px; padding: 0 16px; font-size: 15px; }
.mi-textarea { padding: 14px 16px; font-size: 16px; line-height: 1.55; resize: vertical; }
.mi-input:focus,
.mi-textarea:focus { border-color: #0a0a0a; }
:is(.mi-form, .mi-fields) fieldset { border: 0; padding: 0; margin: 0; min-width: 0; }
:is(.mi-form, .mi-fields) fieldset.mi-fs-col { display: flex; flex-direction: column; gap: 10px; }
.mi-fs-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr)); gap: 10px; }
.mi-radio {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 16px;
  border: 1px solid #e2e2e2;
  border-radius: 10px;
  font-size: 17px;
  color: #1a1a1a;
  cursor: pointer;
}
.mi-radio:hover { border-color: #0a0a0a; }
.mi-radio input { accent-color: #0a0a0a; width: 16px; height: 16px; margin: 0; flex: none; }
.mi-form__actions { display: flex; flex-direction: column; gap: 12px; align-items: stretch; }
.mi-form__submit {
  height: 58px;
  border: 0;
  border-radius: 999px;
  background: #0a0a0a;
  color: #fff;
  font-size: 17px;
  font-weight: 500;
  cursor: pointer;
}
.mi-form__submit:hover { background: #2b2b2b; }
.mi-form__submit:disabled { opacity: .6; cursor: progress; }

/* ---------- Secao escura ---------- */

.mi-dark { background: #0a0a0a; color: #fff; }

/* ---------- FAQ (<details> dentro de .mi-faq__list) ---------- */

.mi-faq__list summary { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 22px 0; cursor: pointer; font-size: 17px; font-weight: 500; line-height: 1.4; }
.mi-faq__list summary span { flex: none; font-size: 22px; font-weight: 400; color: #7a7a7a; }
.mi-faq__list details p { margin: 0 0 24px; max-width: 680px; font-size: 15px; line-height: 1.7; color: #5f5f5f; }
.mi-faq__list details.mi-faq--big summary { font-size: 19px; }
.mi-faq__list details.mi-faq--big p { font-size: 18px; }

/* ---------- Utilitarios ---------- */

.mi-nowrap { white-space: nowrap; }
.mi [hidden] { display: none !important; }


/* ===================================================================
   Componentes para paginas internas (novos; a home nao os usa)
   =================================================================== */

/* ---------- Tipografia: classes, nunca h1/h2 soltos ---------- */

.mi .mi-t1 { font-family: var(--mi-hfont); font-weight: 500; font-size: clamp(32px, 4.4vw, 56px); letter-spacing: -.03em; line-height: 1.12; text-wrap: balance; }
.mi .mi-t2 { font-family: var(--mi-hfont); font-weight: 500; font-size: clamp(27px, 3.4vw, 44px); letter-spacing: -.025em; line-height: 1.14; text-wrap: balance; }
.mi .mi-t3 { font-family: var(--mi-hfont); font-weight: 500; font-size: clamp(20px, 2vw, 24px); letter-spacing: -.015em; line-height: 1.3; }
.mi .mi-eyebrow { font-size: 14px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--mi-faint); }
.mi .mi-small { font-size: 14px; line-height: 1.6; color: var(--mi-muted); }
.mi-sec--dark .mi-lead,
.mi-sec--dark .mi-small { color: var(--mi-on-dark); }
.mi-sec--dark .mi-lead strong { color: #fff; }
.mi-sec--dark .mi-eyebrow { color: #9a9a9a; }

/* ---------- Secao padrao ---------- */

.mi-sec--light { background: var(--mi-paper); color: var(--mi-ink); }
.mi-sec--dark { background: var(--mi-ink); color: #fff; }
.mi-sec--dark .mi-t1,
.mi-sec--dark .mi-t2,
.mi-sec--dark .mi-t3 { color: #fff; }
.mi-sec--dark a { color: #fff; }
.mi-sec--dark a:hover { color: #d0d0d0; }
.mi-sec--tight { padding-top: clamp(40px, 5vw, 64px); padding-bottom: clamp(40px, 5vw, 64px); }
.mi-sec__body { margin-top: var(--mi-s7); }
.mi-sec__body:first-child { margin-top: 0; }
.mi-stack { display: flex; flex-direction: column; gap: var(--mi-s5); }

/* ---------- Botoes (CTA em pilula com seta: .mi-cta, ja acima) ---------- */

.mi .mi-btn {
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 28px;
  border: 1.5px solid var(--mi-ink);
  border-radius: var(--mi-r-pill);
  background: var(--mi-ink);
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: background .35s ease, box-shadow .35s ease, color .35s ease;
}
.mi .mi-btn:hover { background: var(--mi-ink-2); border-color: var(--mi-ink-2); color: #fff; box-shadow: var(--mi-sh-btn); }
.mi .mi-btn--light { background: #fff; border-color: #fff; color: var(--mi-ink); }
.mi .mi-btn--light:hover { background: #e9e9e9; border-color: #e9e9e9; color: var(--mi-ink); }
.mi .mi-btn--ghost { background: transparent; border-color: var(--mi-ink); color: var(--mi-ink); }
.mi .mi-btn--ghost:hover { background: var(--mi-ink); border-color: var(--mi-ink); color: #fff; }
.mi-sec--dark .mi-btn--ghost { border-color: #fff; color: #fff; }
.mi-sec--dark .mi-btn--ghost:hover { background: #fff; border-color: #fff; color: var(--mi-ink); }
.mi .mi-btn--sm { min-height: var(--mi-hit); padding: 0 20px; font-size: 14px; }
.mi .mi-btn--block { display: flex; width: 100%; }
.mi .mi-btn:disabled { opacity: .6; cursor: progress; }
.mi .mi-btn:focus-visible,
.mi .mi-cta:focus-visible,
.mi a:focus-visible,
.mi summary:focus-visible { outline: 2px solid var(--mi-ink); outline-offset: 3px; }
.mi-sec--dark .mi-btn:focus-visible,
.mi-sec--dark .mi-cta:focus-visible,
.mi-sec--dark a:focus-visible { outline-color: #fff; }
.mi-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 20px; }

/* ---------- Cards ---------- */

.mi-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)); gap: 16px; }
.mi-grid--wide { grid-template-columns: repeat(auto-fit, minmax(min(380px, 100%), 1fr)); }
.mi-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: clamp(20px, 2.4vw, 28px);
  border: 1.5px solid var(--mi-line);
  border-radius: var(--mi-r-md);
  background: #fff;
  color: var(--mi-text);
  transition: border-color .25s ease, box-shadow .25s ease;
}
.mi-card--dark { background: var(--mi-ink); border-color: var(--mi-line-dark); color: var(--mi-on-dark); }
.mi-card--dark .mi-card__t { color: #fff; }
.mi-card--shadow { border-color: #d6d6d6; box-shadow: var(--mi-sh-card); }
.mi-card__tag { align-self: flex-start; font-size: 13px; font-weight: 500; color: var(--mi-faint); letter-spacing: .02em; }
.mi-card__t { font-family: var(--mi-hfont); font-size: 20px; font-weight: 500; letter-spacing: -.015em; line-height: 1.3; color: var(--mi-ink); }
.mi-card__t a { color: inherit; text-decoration: none; }
.mi-card__b { font-size: 16px; line-height: 1.6; color: var(--mi-muted); text-wrap: pretty; }
.mi-card--dark .mi-card__b { color: var(--mi-on-dark); }
/* card inteiro clicavel: o link do titulo estica por cima do card */
.mi-card--link:hover { border-color: var(--mi-ink); box-shadow: var(--mi-sh-card); }
.mi-card--link .mi-card__t a::after { content: ''; position: absolute; inset: 0; border-radius: inherit; }

/* ---------- Breadcrumb ---------- */

.mi-crumb { font-size: 14px; line-height: 1.4; color: var(--mi-faint); }
.mi-crumb ol { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin: 0; padding: 0; list-style: none; }
.mi-crumb li { display: inline-flex; align-items: center; gap: 8px; }
.mi-crumb li + li::before { content: '/'; color: #b0b0b0; }
.mi .mi-crumb a { display: inline-block; padding: 8px 0; color: var(--mi-muted); text-decoration: none; }
.mi .mi-crumb a:hover { color: var(--mi-ink); text-decoration: underline; }
.mi-crumb [aria-current] { color: var(--mi-ink); }

/* ---------- Formularios genericos (class="mi-fields" no <form>) ---------- */

.mi-fields { display: flex; flex-direction: column; gap: 26px; }
.mi-fields__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr)); gap: 18px; }
.mi-box {
  border: 1px solid #d6d6d6;
  border-radius: var(--mi-r-xl);
  padding: clamp(24px, 3.5vw, 40px);
  background: #fff;
  box-shadow: var(--mi-sh-card);
}
.mi-fields .mi-input:focus-visible,
.mi-fields .mi-textarea:focus-visible { border-color: var(--mi-ink); box-shadow: 0 0 0 3px rgba(10, 10, 10, .12); }
.mi-fields .mi-input[aria-invalid="true"],
.mi-fields .mi-textarea[aria-invalid="true"] { border-color: var(--mi-danger); }
select.mi-input { appearance: auto; }
.mi-fields .mi-radio:has(input:checked) { border-color: var(--mi-ink); background: #f7f7f7; }
.mi-fields .mi-radio { min-height: var(--mi-hit); }
.mi-erro { font-size: 15px; line-height: 1.5; color: var(--mi-danger); }

/* ---------- Prosa (guias, ofertas, imprensa: texto corrido) ---------- */

.mi-prose { max-width: var(--mi-prose); font-size: 18px; line-height: 1.75; color: var(--mi-text); text-wrap: pretty; }
.mi .mi-prose > * + * { margin-top: 1.1em; } /* .mi: vence o reset .mi p { margin: 0 } */
.mi-prose h2 { margin-top: 2.2em; font-size: clamp(25px, 2.8vw, 34px); letter-spacing: -.02em; line-height: 1.2; color: var(--mi-ink); }
.mi-prose h3 { margin-top: 1.8em; font-size: clamp(20px, 2.1vw, 24px); letter-spacing: -.015em; line-height: 1.3; color: var(--mi-ink); }
.mi .mi-prose h2 + *,
.mi .mi-prose h3 + * { margin-top: .7em; }
.mi-prose ul,
.mi-prose ol { padding-left: 1.4em; }
.mi-prose ul { list-style: disc; }
.mi-prose ol { list-style: decimal; }
.mi-prose li + li { margin-top: .45em; }
.mi-prose blockquote { padding: 4px 0 4px 20px; border-left: 3px solid var(--mi-ink); color: var(--mi-muted); }
.mi-prose img { max-width: 100%; height: auto; border-radius: var(--mi-r-md); }
.mi-prose table { width: 100%; border-collapse: collapse; font-size: 16px; }
.mi-prose th,
.mi-prose td { padding: 10px 12px; border-bottom: 1px solid var(--mi-line); text-align: left; vertical-align: top; }
.mi-prose th { font-weight: 600; color: var(--mi-ink); }
.mi-prose-wrap { max-width: var(--mi-prose); margin: 0 auto; }

/* ---------- Cabecalho (paginas internas; a home nao tem) ---------- */

.mi-header {
  position: sticky;
  top: 0;
  z-index: 40;
  background: rgba(255, 255, 255, .92);
  -webkit-backdrop-filter: saturate(1.4) blur(12px);
  backdrop-filter: saturate(1.4) blur(12px);
  border-bottom: 1px solid #ececec;
}
.mi-header__in {
  max-width: calc(var(--mi-wrap) + 2 * var(--mi-gutter));
  margin: 0 auto;
  min-height: 64px;
  padding: 8px var(--mi-gutter);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.mi .mi-header__brand { display: inline-flex; align-items: center; min-height: var(--mi-hit); font-family: var(--mi-hfont); font-size: 20px; font-weight: 500; letter-spacing: -.02em; color: var(--mi-ink); text-decoration: none; }
.mi-header__nav { display: flex; align-items: center; gap: 8px 20px; }
.mi .mi-header__link { display: inline-flex; align-items: center; min-height: var(--mi-hit); padding: 0 6px; font-size: 15px; font-weight: 500; color: var(--mi-muted); text-decoration: none; }
.mi .mi-header__link:hover,
.mi .mi-header__link[aria-current] { color: var(--mi-ink); }

/* ancoras abaixo do cabecalho sticky */
.mi-header ~ * [id],
.mi-header ~ [id] { scroll-margin-top: 84px; }

/* ---------- Rodape (paginas internas) ---------- */

.mi-footer { background: var(--mi-ink); color: #a3a3a3; padding: clamp(56px, 7vw, 88px) var(--mi-gutter) 40px; }
.mi-footer__in { max-width: var(--mi-wrap); margin: 0 auto; }
.mi-footer__grid { display: grid; gap: 40px; grid-template-columns: 1fr; }
.mi-footer__brand { font-family: var(--mi-hfont); font-size: 24px; font-weight: 500; letter-spacing: -.02em; color: #fff; }
.mi-footer__desc { margin-top: 14px; max-width: 28rem; font-size: 15px; line-height: 1.65; color: #a3a3a3; }
.mi-footer__links { display: grid; gap: 0 24px; grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr)); margin: 0; padding: 0; list-style: none; }
.mi .mi-footer__links a { display: inline-flex; align-items: center; min-height: var(--mi-hit); font-size: 15px; color: #d4d4d4; text-decoration: none; }
.mi .mi-footer__links a:hover { color: #fff; text-decoration: underline; }
.mi-footer__legal { margin-top: 48px; padding-top: 32px; border-top: 1px solid #262626; }
.mi-footer__disclaimer { font-size: 12.5px; line-height: 1.7; color: #8a8a8a; }
.mi-footer__copy { margin-top: 24px; font-size: 12.5px; line-height: 1.4; color: #7a7a7a; }
@media (min-width: 960px) {
  .mi-footer__grid { grid-template-columns: 1.3fr 1fr; gap: 80px; }
}
@media (max-width: 640px) {
  .mi-header__nav .mi-header__link { display: none; }
}

/* ---------- Movimento reduzido ---------- */

@media (prefers-reduced-motion: reduce) {
  .mi-faixa__track,
  .mi-online__dot::before { animation: none; }
  .mi-btn,
  .mi-card,
  .mi-cta,
  .mi-cta__c { transition: none; }
}

/* faixa marquee solta (fora do hero): sem a sobreposicao negativa */
.mi-faixas--flat { margin-top: 0; }
