/* Footer Max Titanium: medidas do storefront (09/10/2026). Fonte RestFont do cdn-retailhub. */
/* @font-face da RestFont mora no <head> do index.html (pre-carregada); este arquivo carrega sem bloquear */

.mx-ft { --mx-ft-texto: rgb(64, 64, 64); --mx-ft-linha: #efefef; --mx-ft-primaria: rgb(205, 24, 30);
  position: relative; background: #fff; color: var(--mx-ft-texto); font: 400 16px/24px RestFont, sans-serif; padding: 0 0 24px; }
.mx-ft *, .mx-ft *::before, .mx-ft *::after { box-sizing: border-box; }
:where(.mx-ft) h3, :where(.mx-ft) ul, :where(.mx-ft) p { margin: 0; padding: 0; }
:where(.mx-ft) ul { list-style: none; }
:where(.mx-ft) a { color: inherit; text-decoration: none; }
:where(.mx-ft) img { display: block; object-fit: contain; }

/* mesmo grid da pagina (--grid e --borda vem do index; os valores depois da virgula valem so no preview) */
.mx-ft-grid { width: 100%; max-width: var(--grid, none); margin: 0 auto; padding: 0 var(--borda, 16px); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 24px; }
.mx-ft-div { display: none; }
.mx-ft-nav { display: flex; flex-direction: column; width: 100%; grid-column: span 2; }
.mx-ft-half { grid-column: span 2; }
.mx-ft-title { font-size: 16px; line-height: 24px; font-weight: 600; padding-bottom: 24px; }

.mx-ft-list li { font-size: 14px; line-height: 20px; margin-bottom: 20px; }
.mx-ft-list li:last-of-type { margin-bottom: 0; }
.mx-ft-list a:hover { text-decoration: underline; }

.mx-ft-icons { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.mx-ft-icons li { display: flex; align-items: center; justify-content: center; }
.mx-ft-icons img { width: auto; }
.mx-ft-redes { padding-left: 12px; }

/* acordeao do mobile */
.mx-ft-btn { all: unset; position: relative; display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; font: 600 16px/24px RestFont, sans-serif; color: var(--mx-ft-texto); cursor: pointer; }
.mx-ft-btn:focus-visible { outline: 2px solid var(--mx-ft-primaria); outline-offset: 4px; }
.mx-ft-mais { position: absolute; right: 8px; width: 12px; height: 12px; display: flex; justify-content: center; align-items: center; }
.mx-ft-mais::before, .mx-ft-mais::after { content: ""; position: absolute; background: var(--mx-ft-primaria); transition: transform .3s cubic-bezier(.4, 0, .2, 1); }
.mx-ft-mais::before { width: 12px; height: 1.5px; }
.mx-ft-mais::after { width: 1.5px; height: 12px; }
.mx-ft-acc .mx-ft-title { display: none; }
.mx-ft-acc .mx-ft-list { max-height: 0; padding: 0 16px; overflow: hidden; transition: all .3s cubic-bezier(.4, 0, .2, 1); }
.mx-ft-acc.is-aberto .mx-ft-list { max-height: 400px; padding-top: 20px; }
.mx-ft-acc.is-aberto .mx-ft-mais::after { transform: scaleY(0); }

.mx-ft-logo { padding-top: 32px; }
.mx-ft-logo img { height: 40px; width: auto; }
.mx-ft-legal { grid-column: span 2; display: flex; flex-direction: column; align-items: center; }
.mx-ft-legal p { text-align: center; font-size: 16px; line-height: 28px; max-width: 100%; }
.mx-ft-10 { font-size: 10px; line-height: 17.5px; }
.mx-ft-9 { font-size: 9px; line-height: 15.75px; }
.mx-ft-14 { font-size: 14px; line-height: 24.5px; }

@media (min-width: 1024px) {
  .mx-ft-grid { grid-template-columns: repeat(12, minmax(0, 1fr)); padding: 0 var(--borda, 40px); }
  .mx-ft-div { display: block; grid-column: span 12; height: 1px; background: var(--mx-ft-linha); }
  .mx-ft-nav, .mx-ft-half { grid-column: span 3; }
  .mx-ft-title, .mx-ft-acc .mx-ft-title { display: block; padding: 0; margin-bottom: 20px; }
  .mx-ft-btn { display: none; }
  .mx-ft-acc .mx-ft-list { max-height: none; padding: 0; overflow: visible; }
  .mx-ft-logo { padding-top: 0; }
  .mx-ft-legal { grid-column: span 12; }
}
