/* Shared footer for the released FeatureContext audience. */
.site-footer.site-footer--refresh {
  padding: 64px 0 28px !important;
  background: #070a08 !important;
  border-top: 1px solid #28322c !important;
  color: #99a39d !important;
}

.site-footer.site-footer--refresh > .container {
  display: block;
  max-width: 1280px;
  text-align: start !important;
}

.footer-layout {
  display: grid;
  grid-template-columns: minmax(280px, 1.8fr) repeat(3, minmax(0, 1fr));
  gap: clamp(28px, 4vw, 64px);
  padding-bottom: 48px;
}

.footer-brand { max-width: 360px; }

.footer-brand__logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #f4f7f5;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: -.7px;
  line-height: 1;
  text-decoration: none;
}

.footer-brand__logo img { width: 44px; height: 44px; object-fit: contain; }
.footer-brand__logo b { color: var(--accent, #a3ff12); }

.footer-brand__title {
  margin: 24px 0 10px;
  color: #edf2ee;
  font-size: 1.05rem;
  font-weight: 600;
  line-height: 1.7;
}

.footer-brand__description {
  margin: 0;
  color: #99a39d;
  font-size: .9rem;
  line-height: 1.85;
}

.footer-store {
  display: inline-flex;
  margin-top: 24px;
  border-radius: 6px;
  text-decoration: none;
}

.footer-store img { display: block; width: 183px; height: 50px; }
.footer-store:hover { opacity: .85; }

.footer-column { min-width: 0; padding-top: 10px; }
.footer-column h2 {
  margin: 0 0 22px;
  color: #edf2ee;
  font-size: .95rem;
  font-weight: 600;
  line-height: 1.6;
}

.footer-column ul { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; list-style: none; }
.footer-column a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  color: #99a39d;
  font-size: .9rem;
  line-height: 1.6;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.footer-pro span { color: var(--accent, #a3ff12); font-size: .65rem; font-weight: 700; letter-spacing: .6px; }

.footer-notice {
  max-width: 1040px;
  margin: 0 0 24px;
  color: #87928b;
  font-size: .75rem;
  line-height: 1.9;
}

.footer-meta {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 28px;
  padding-top: 24px;
  border-top: 1px solid #222b25;
}

.footer-policies { display: flex; flex-wrap: wrap; gap: 8px 22px; max-width: 68%; }
.footer-policies a { display: inline-flex; align-items: center; min-height: 32px; color: #99a39d; font-size: .75rem; line-height: 1.8; text-decoration: none; }
.footer-signoff { flex-shrink: 0; text-align: end; font-size: .75rem; line-height: 1.8; }
.footer-signoff p { margin: 0; }
.footer-signoff .footer-studio { margin-top: 6px; color: #87928b; }
.footer-studio a { display: inline-flex; align-items: center; gap: 5px; color: #dce4de; text-decoration: none; }
.footer-studio svg { width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 1.3; }
.site-footer--refresh a:hover { color: var(--accent, #a3ff12); }
.site-footer--refresh a:focus-visible { outline: 2px solid var(--accent, #a3ff12); outline-offset: 5px; border-radius: 3px; }

@media (max-width: 1000px) {
  .footer-layout { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px 28px; }
  .footer-brand { grid-column: 1 / -1; max-width: 480px; }
  .footer-brand__title { margin-top: 20px; }
  .footer-meta { flex-direction: column; gap: 18px; }
  .footer-policies { max-width: 100%; }
  .footer-signoff { text-align: start; }
}

@media (max-width: 560px) {
  .site-footer.site-footer--refresh { padding: 40px 0 28px !important; }
  .footer-layout { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 24px; padding-bottom: 32px; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-brand__logo { font-size: 1.4rem; }
  .footer-column { padding-top: 0; }
  .footer-column h2 { margin-bottom: 12px; }
  .footer-column a { min-height: 40px; font-size: .85rem; }
  .footer-column:last-child { grid-column: 1 / -1; }
  .footer-column:last-child ul { flex-direction: row; flex-wrap: wrap; gap: 4px 24px; }
  .footer-policies { gap: 4px 20px; }
  .footer-policies a { min-height: 40px; }
  .footer-signoff { flex-shrink: 1; }
}
