/* Existing sections, now grouped into four localized category pages. */
.category-page .category-title {
  color: var(--brand-orange);
  font-size: var(--t-2xl);
}
.category-products #product .category-title {
  font-size: clamp(30px, 3vw, 44px);
  line-height: 1.2;
  text-wrap: balance;
}
.category-about #tech { margin-top: 0; }
.category-page #customers,
.category-page #support { scroll-margin-top: 84px; }

/* Match the existing homepage navigation on detail pages and in every locale. */
@media (max-width: 1240px) {
  .site-header .brand { flex-shrink: 0; }
  .site-header .nav-toggle { display: flex; flex-shrink: 0; }
  .site-header .site-nav {
    position: fixed;
    inset: 68px 0 auto;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--s-4);
    max-height: calc(100dvh - 68px);
    overflow-y: auto;
    padding: var(--s-6) var(--s-5);
    border-bottom: 1px solid var(--line);
    background: var(--surface-card);
    box-shadow: var(--shadow);
    transform: translateY(-120%);
    visibility: hidden;
    transition: transform .25s var(--ease), visibility .25s;
  }
  .site-header .site-nav.is-open { transform: translateY(0); visibility: visible; }
  .site-header .site-nav > a { display: flex; align-items: center; min-height: 44px; }
  .site-header .lang-switch { margin-top: var(--s-2); }
}
@media (max-width: 980px) {
  .category-page .category-title { font-size: var(--t-xl); }
}
@media (max-width: 600px) {
  .category-products #product:lang(ja) .category-title { font-size: 28px; }
}
@media (prefers-reduced-motion: reduce) {
  .site-header .site-nav { transition: none; }
}
