/* Progressive enhancement: desktop keeps its original footer markup and styles. */
@media (max-width:600px) {
  .footer-grid { grid-template-columns:minmax(0,1fr); gap:0; }
  .footer-grid > div:first-child { margin-bottom:24px; }
  .footer-accordion { min-width:0; border-bottom:1px solid var(--line); }
  .footer-accordion:nth-child(2) { border-top:1px solid var(--line); }
  .footer-accordion h3 { margin:0; }
  .footer-accordion__toggle {
    display:flex; align-items:center; justify-content:space-between; gap:16px;
    width:100%; min-height:56px; padding:16px 0; border:0; border-radius:0;
    background:transparent; color:inherit; font:inherit; letter-spacing:inherit;
    text-align:left; cursor:pointer;
  }
  .footer-accordion__toggle:focus-visible { outline:2px solid var(--p); outline-offset:4px; }
  .footer-accordion__toggle svg {
    flex:none; width:16px; height:16px; fill:none; stroke:currentColor;
    stroke-width:1.5; transition:transform 240ms ease;
  }
  .footer-accordion__toggle[aria-expanded="true"] svg { transform:rotate(180deg); }
  .footer-accordion__panel { display:grid; grid-template-rows:0fr; visibility:hidden; transition:grid-template-rows 280ms ease,visibility 280ms; }
  .footer-accordion__panel.is-open { grid-template-rows:1fr; visibility:visible; }
  .footer-accordion__links { min-height:0; overflow:hidden; }
  .footer-accordion__links a { display:flex; width:fit-content; max-width:100%; min-height:44px; overflow-wrap:anywhere; }
  .footer-accordion__links a:last-child { margin-bottom:16px; }
  .footer .footer-bottom { margin-top:24px; padding-top:0; border-top:0; }
}
@media (max-width:600px) and (prefers-reduced-motion:reduce) {
  .footer-accordion__panel,.footer-accordion__toggle svg { transition:none; }
}
