/**
 * Novo footer compacto — quorum.us
 * Substitui as regras de .footer-top / .footer-bottom do tema.
 * O markup do wp_nav_menu (ul#menu-footer-menu) permanece intacto.
 * Tokens --quorum-color-* já existem no :root do tema.
 */

.global-footer {
  background: var(--quorum-color-indigo, #221F54);
  color: var(--quorum-color-cool-gray, #D5DCEF);
  padding: 56px 0 0;
}

/* derivados p/ fundo escuro */
.global-footer {
  --q-ultraviolet-light: #A79AF6;
  --q-indigo-lighten: #2E2A6B;
  --q-border-dark: #3B3775;
  --q-muted: #9C99C7;
}

.global-footer .footer-top {
  display: grid;
  grid-template-columns: 300px 1fr;
  gap: 56px;
  padding-bottom: 40px;
}

/* ---- Coluna 1: logo + newsletter (movida do footer-bottom) + social ---- */
.global-footer .global-footer-logo-link {
  display: block;
  width: 156px;
  color: #fff; /* SVG do logo herda via currentColor (versão branca) */
  margin-bottom: 22px;
}
.global-footer .global-footer-logo-link svg { width: 100%; height: auto; display: block; }

.global-footer .newsletter__headline {
  font-family: 'niveau-grotesk', 'Roboto', system-ui, sans-serif;
  font-size: 18px; font-weight: 500; color: #fff; line-height: 1.4; margin-bottom: 14px;
}
.global-footer .newsletter__form { margin-bottom: 22px; }
/* Marketo: garante largura fluida dentro da coluna de 300px */
.global-footer .newsletterForm_Footer.mktoHasWidth,
.global-footer .newsletterForm_Footer .mktoFieldWrap,
.global-footer .newsletterForm_Footer .mktoField { width: 100% !important; }
.global-footer .newsletterForm_Footer .mktoField {
  padding: 10px 12px;
  border: 1px solid var(--quorum-color-plum, #535383);
  border-radius: 5px;
  background: var(--q-indigo-lighten);
  color: #fff;
}
.global-footer .newsletterForm_Footer .mktoButton {
  background: var(--quorum-color-ultraviolet, #7259ef);
  color: #fff; border: 0; border-radius: 5px;
  padding: 10px 18px; font-weight: 700; cursor: pointer;
}
.global-footer .newsletterForm_Footer .mktoButton:hover { background: #8672f2; }

/* ---- Colunas de menu ---- */
.global-footer .footer-menu-column ul { list-style: none; margin: 0; padding: 0; }

/* Larguras assimétricas: Top Content mais largo para títulos longos em 1 linha */
.global-footer #menu-footer-menu {
  display: grid;
  grid-template-columns: 1.1fr .7fr 1.6fr .6fr;
  gap: 32px;
}
.global-footer #menu-footer-menu > li > a {
  display: block; font-size: 12px; font-weight: 700; letter-spacing: .08em;
  text-transform: uppercase; color: var(--q-ultraviolet-light);
  text-decoration: none; margin-bottom: 14px;
}
.global-footer .sub-menu li { margin-bottom: 9px; }
.global-footer .sub-menu a {
  font-size: 13.5px; color: var(--quorum-color-cool-gray, #D5DCEF);
  text-decoration: none; line-height: 1.4;
  display: block; /* v1.4: links quebram linha (sem ellipsis) */
}
.global-footer .sub-menu a:hover { color: #fff; text-decoration: underline; }

/* ---- Accordion (classes aplicadas pelo footer-accordion.js) ---- */
.global-footer .sub-menu.is-collapsible li.is-extra { display: none; }
.global-footer .sub-menu.is-collapsible.is-expanded li.is-extra { display: list-item; }
.global-footer .footer-submenu-toggle {
  background: none; border: 0; padding: 0; margin-top: 4px;
  font-size: 12.5px; font-weight: 600; color: var(--q-ultraviolet-light);
  cursor: pointer; display: inline-flex; align-items: center; gap: 6px; font-family: inherit;
}
.global-footer .footer-submenu-toggle:hover { color: #fff; }
.global-footer .footer-submenu-toggle .chev { transition: transform .2s; font-size: 10px; }
.global-footer .footer-submenu-toggle.is-open .chev { transform: rotate(180deg); }

/* ---- Barra inferior: contato inline + copyright ---- */
.global-footer .footer-bottom {
  border-top: 1px solid var(--q-border-dark);
  padding: 18px 0 22px;
  display: flex; flex-wrap: wrap; align-items: center;
  justify-content: space-between; gap: 12px;
  font-size: 12.5px; color: var(--q-muted);
}
.global-footer .footer-bottom .contact-inline a { color: var(--quorum-color-cool-gray, #D5DCEF); text-decoration: none; }
.global-footer .footer-bottom .contact-inline a:hover { color: #fff; }
.global-footer .footer-bottom .contact-inline .sep { margin: 0 8px; color: var(--quorum-color-plum, #535383); }
.global-footer .footer-bottom .legal a { color: var(--quorum-color-cool-gray, #D5DCEF); }

/* ---- Ajustes p/ markup real do tema (footer.php) ---- */
/* logo do tema tem fills fixos (#221F54/#7259EF) — força a versão branca */
.global-footer .global-footer-logo-link svg [fill]:not([fill="none"]) { fill: #fff; }
/* Marketo: esconde labels/gutter (placeholder já informa o campo) */
.global-footer .newsletterForm_Footer .mktoLabel,
.global-footer .newsletterForm_Footer .mktoGutter,
.global-footer .newsletterForm_Footer .mktoOffset { display: none; }
/* Contact Info no footer-bottom: conteúdo em linha única */
.global-footer .footer-bottom .textwidget,
.global-footer .footer-bottom .textwidget > * { display: inline; }
/* Social (FontAwesome herda currentColor): claro sobre o fundo indigo */
.global-footer .social-icon-link { color: var(--quorum-color-cool-gray, #D5DCEF) !important; }
.global-footer .social-icon-link:hover { color: #fff !important; }
/* headline usa .like-h4 no tema (26px) — força o tamanho compacto */
.global-footer .newsletter__headline.like-h4 { font-size: 18px; margin-bottom: 14px; }
/* copyright ACF (p.legal-text) */
.global-footer .footer-bottom .legal-text { margin: 0; font-size: 12.5px; color: var(--q-muted); }
.global-footer .footer-bottom .legal-text a { color: var(--quorum-color-cool-gray, #D5DCEF); }
/* widget Contact Info quando movido p/ footer-bottom: vira linha única */
.global-footer .footer-bottom .widget-container { font-size: 12.5px; color: var(--q-muted); }
.global-footer .footer-bottom .widget-container .widget-title { display: none; }
.global-footer .footer-bottom .widget-container p { margin: 0; display: inline; }
.global-footer .footer-bottom .widget-container br { display: none; }
.global-footer .footer-bottom .widget-container a { color: var(--quorum-color-cool-gray, #D5DCEF); text-decoration: none; }

/* ---- v1.3: coluna 1 mais estreita + form Marketo empilhado ----
   Causa raiz do overlap: o tema aplica margin-top:-58px no form.mktoForm
   (alinhamento do layout antigo no footer-bottom) — zerado aqui. */
.global-footer .footer-top { grid-template-columns: 260px 1fr; gap: 40px; }
.global-footer #menu-footer-menu { gap: 24px; }
.global-footer .newsletter__form { overflow: visible; height: auto !important; min-height: 0; margin-top: 10px; }
.global-footer .newsletter__form form.mktoForm {
  display: block !important; width: 100% !important; height: auto !important;
  margin: 0 !important; padding: 0 !important;
}
.global-footer .newsletterForm_Footer .mktoFormRow { display: block; width: 100% !important; }
.global-footer .newsletterForm_Footer .mktoField { width: 100% !important; box-sizing: border-box; margin: 0 0 10px !important; display: block; }
.global-footer .newsletterForm_Footer .mktoButtonRow { display: block; width: 100% !important; }
.global-footer .newsletterForm_Footer .mktoButton { display: block; width: 100%; }

/* ---- Responsivo ---- */
@media (max-width: 960px) {
  .global-footer .footer-top { grid-template-columns: 1fr; gap: 36px; }
  .global-footer #menu-footer-menu { grid-template-columns: repeat(2, 1fr); }
}
/* Mobile v1.6: coluna 1 (logo+newsletter) em 100% no topo; menus abaixo em 2×2.
   !important necessário: os blocos v1.2+ vêm depois das media queries no arquivo. */
@media (max-width: 960px) {
  .global-footer .footer-top { grid-template-columns: 1fr !important; gap: 32px !important; }
  .global-footer .footer-logo-and-widgets-column { width: 100%; }
  .global-footer .newsletter__form,
  .global-footer .newsletterForm_Footer .mktoField,
  .global-footer .newsletterForm_Footer .mktoButton { width: 100% !important; }
}

/* Mobile v1.5: 2 colunas fixas; menus recolhidos por inteiro — título = toggle */
@media (max-width: 767px) {
  .global-footer #menu-footer-menu {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px 20px;
  }
  /* título da coluna vira botão com chevron */
  .global-footer #menu-footer-menu > li.qf-mobile-toggle > a {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 8px; cursor: pointer;
  }
  .global-footer #menu-footer-menu > li.qf-mobile-toggle > a::after {
    content: '\25BE'; font-size: 11px; transition: transform .2s;
  }
  .global-footer #menu-footer-menu > li.qf-open > a::after { transform: rotate(180deg); }
  .global-footer .footer-bottom { flex-direction: column; align-items: flex-start; }
}

/* ---- v1.8: reduz o vão entre input e botão (Marketo aplica margin-top:40px no buttonRow) ---- */
.global-footer .newsletterForm_Footer .mktoButtonRow { margin-top: 0 !important; }
