:root {
  scroll-padding-top: 76px;
}

@media (prefers-reduced-motion: reduce) {
  html.scroll-smooth { scroll-behavior: auto; }
}

.site-footer-grid { grid-template-columns: minmax(0, 1fr); }
.contact-qr-grid { display: flex; flex-wrap: wrap; gap: 12px; }
.contact-qr-item { color: #cbd5e1; text-align: center; font-size: .75rem; }
.contact-qr-item img {
  width: 90px;
  height: 90px;
  padding: 4px;
  object-fit: contain;
  background: white;
  border-radius: .35rem;
}
.contact-qr-item p { margin-top: .4rem; max-width: 100px; }

@media (min-width: 768px) {
  .site-footer-grid { grid-template-columns: minmax(0, 1fr) minmax(0, .65fr) minmax(0, 1.35fr); }
}

#download-dialog {
  width: min(56rem, calc(100vw - 2rem));
  max-height: calc(100dvh - 2rem);
  margin: auto;
  padding: 1.25rem;
  overflow: auto;
  border-radius: 1rem;
  background: #f8fafc;
  color: #0f172a;
  box-shadow: 0 24px 72px #02061755;
}
#download-dialog::backdrop { background: #020617aa; }
.download-heading { display: flex; justify-content: space-between; align-items: center; gap: 1rem; margin-bottom: 1rem; }
.download-heading h2 { font-size: 1.4rem; font-weight: 700; }
.dialog-close { width: 2.75rem; height: 2.75rem; border-radius: .5rem; background: #e2e8f0; font-size: 1.5rem; }
.download-options > div { padding-inline: 0; }
body:has(#download-dialog[open]) { overflow: hidden; }

.dark header { background: rgb(15 23 42 / .95); border-color: #334155; }
.dark header .text-gray-900, .dark header a, .dark header button { color: #e2e8f0; }
.dark header a:hover, .dark header button:hover { background: #1e293b; color: #6ee7b7; }
.dark #mobile-menu { border-color: #334155; }
.dark #download-dialog { color: #e2e8f0; background: #0f172a; }
.dark .dialog-close { background: #334155; }

.download-tab {
  border-color: #cbd5e1;
  background: #e2e8f0;
  color: #334155;
  gap: .5rem;
}
.download-tab:hover { border-color: #059669; }
.download-tab[aria-selected="true"] {
  border-color: #059669;
  background: white;
  color: #064e3b;
  box-shadow: 0 0 0 2px #05966933;
}
.download-tab-badge { background: white; color: #475569; }
.download-tab[aria-selected="true"] .download-tab-badge { background: #d1fae5; color: #065f46; }
.dark .download-tab { border-color: #475569; background: #1e293b; color: #e2e8f0; }
.dark .download-tab[aria-selected="true"] { border-color: #6ee7b7; color: #a7f3d0; }
