/* Ali Folheados — acabamento do rodapé (estrutura portada do finaflorjua, cores da marca Ali) */
:root {
  --ali-gold: #dd9933;
  --ali-bronze: #c08467;
  --ali-bg: #413c32;
  --ali-bg-dark: #36322a;
  --ali-link: #d9d6d0;
  --ali-ease: cubic-bezier(.22,.61,.36,1);
}

/* Logo no topo do rodapé */
.ali-footer-logo { background: var(--ali-bg); padding: 2.2em 0 0; text-align: center; }
.ali-footer-logo .custom-logo-link { display: inline-block; }
.ali-footer-logo img { max-height: 54px; width: auto; }

/* Faixa dourada no topo + respiro */
.site-footer { position: relative; padding-top: 2.4em; padding-bottom: 1.4em; }
.site-footer::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--ali-bronze), var(--ali-gold) 50%, var(--ali-bronze));
}
.ali-footer-logo + .site-footer { padding-top: 1.6em; }
.ali-footer-logo + .site-footer::before { display: none; }

/* Títulos: caixa alta, traço dourado embaixo */
.site-footer .widget-title {
  display: block; position: relative; padding-bottom: .7em; margin-bottom: 1.1em;
  font-size: .95rem !important; font-weight: 600; letter-spacing: .12em; text-transform: uppercase;
  color: var(--ali-bronze) !important;
}
@media (min-width: 768px) {
  .site-footer .widget .widget-title::after {
    content: "" !important; display: block !important; position: absolute !important;
    left: 0 !important; right: auto !important; top: auto !important; bottom: 0 !important;
    width: 32px; height: 2px; border-radius: 2px; background: var(--ali-gold); transform: none !important; margin: 0 !important;
  }
}

/* Links */
.site-footer .menu li, .site-footer .textwidget li { margin-bottom: .35em; }
.site-footer .menu a, .site-footer .textwidget li a {
  display: inline-block; color: var(--ali-link);
  transition: color .2s, transform .2s var(--ali-ease);
}
.site-footer .menu a:hover, .site-footer .textwidget li a:hover { color: var(--ali-gold); transform: translateX(4px); }

/* Ícones sociais em círculos */
.site-footer .social-icons2 { gap: 14px !important; margin-top: 4px !important; }
.site-footer .social-icons2 a {
  width: 42px !important; height: 42px !important; display: inline-flex !important;
  align-items: center; justify-content: center; border-radius: 50%;
  background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,.25);
  transition: transform .25s var(--ali-ease), box-shadow .25s var(--ali-ease);
}
.site-footer .social-icons2 a:hover { transform: translateY(-3px); box-shadow: 0 10px 22px -8px rgba(0,0,0,.5); }
.site-footer .social-icons2 img { width: 22px !important; height: 22px !important; }

/* Desktop: 3 colunas iguais separadas por linha fina */
@media (min-width: 768px) {
  .site-footer .col-full { display: grid; grid-template-columns: repeat(3, 1fr); align-items: start; }
  .site-footer .col-full::before, .site-footer .col-full::after { display: none !important; } /* clearfix do tema vira item do grid */
  .site-footer .widget { padding-left: 40px; padding-right: 40px; margin-bottom: 0; }
  .site-footer .widget:first-child { padding-left: 20px; } /* alinha com o conteúdo da página */
  .site-footer .widget:last-child { padding-right: 20px; }
  .site-footer .widget + .widget { border-left: 1px solid rgba(255,255,255,.12); }
  .site-footer .widget_nav_menu > *:not(.widget-title) { margin-top: 0 !important; }
}

/* Mobile: tudo centralizado; "Informação" vira acordeão */
@media (max-width: 767px) {
  .site-footer .widget { text-align: center; padding-bottom: 8px; }
  .site-footer .social-icons2 { justify-content: center !important; }
  .site-footer .widget_nav_menu .widget-title { cursor: pointer; margin-bottom: .4em; }
  .site-footer .widget_nav_menu .widget-title::after {
    content: "▾"; display: block; position: static; font-size: .8rem; margin-top: .3em; color: var(--ali-gold);
    transition: transform .25s var(--ali-ease);
  }
  .site-footer .widget_nav_menu.is-open .widget-title::after { transform: rotate(180deg); }
  .site-footer .widget_nav_menu > *:not(.widget-title) {
    display: grid; grid-template-rows: 0fr; opacity: 0; overflow: hidden;
    transition: grid-template-rows .3s var(--ali-ease), opacity .3s;
  }
  .site-footer .widget_nav_menu > *:not(.widget-title) > * { min-height: 0; overflow: hidden; }
  .site-footer .widget_nav_menu.is-open > *:not(.widget-title) { grid-template-rows: 1fr; opacity: 1; }
}

@media (prefers-reduced-motion: reduce) { .site-footer * { transition: none !important; } }

/* ---------- Sidebar de filtros da Loja "grudada" (sticky) no desktop ----------
   Abaixo de 993px o tema transforma #secondary num drawer off-canvas — não mexer.
   Não definir overflow no <html>: quebraria o sticky (o body viraria o contêiner de scroll). */
@media (min-width: 993px) {
  .woocommerce.archive #secondary,
  .page-template-template-woocommerce-archives #secondary {
    position: sticky;
    top: calc(var(--ali-header-height, 0px) + 20px);
    max-height: calc(100vh - var(--ali-header-height, 0px) - 40px);
    overflow-y: auto;
    overflow-x: hidden; /* sem isso o navegador converte o eixo X em auto e aparece barra horizontal */
  }
}

/* Sidebar sticky: sem barra de rolagem visível (continua rolando com o mouse/touch se faltar espaço) e espaçamento compacto */
@media (min-width: 993px) {
  .woocommerce.archive #secondary,
  .page-template-template-woocommerce-archives #secondary {
    scrollbar-width: none;      /* Firefox */
    -ms-overflow-style: none;   /* Edge antigo */
  }
  .woocommerce.archive #secondary::-webkit-scrollbar,
  .page-template-template-woocommerce-archives #secondary::-webkit-scrollbar { display: none; } /* Chrome/Safari */
  #secondary .widget { margin-bottom: 14px !important; padding-bottom: 10px !important; }
  #secondary .widget_block { padding-bottom: 0 !important; }
}
