/* Consistent, tighter spacing between public content sections. */
.section { padding-block: clamp(44px, 6vw, 76px); }
.jb-section { padding-block: clamp(42px, 5.5vw, 72px); }
.showcase-hero { padding-top: clamp(56px, 7vw, 92px); padding-bottom: 34px; }
.showcase-groups { padding-top: 24px; padding-bottom: 26px; }
.showcase-color-index { padding-top: 24px; padding-bottom: 38px; }
.showcase-group { margin-bottom: 34px; }
.showcase-group > header { margin-bottom: 14px; }
.showcase-more { padding: 8px 0 34px; }
.model-more { display: flex; align-items: center; gap: 14px; margin: -12px 0 34px; color: var(--muted, #666); font-size: 13px; }
.model-more button { cursor: pointer; }
#tutListPrep > h2 { margin: 14px 0 6px; font-size: clamp(24px, 3vw, 34px); }
#tutListPrep > .jb-lede { margin: 0 0 26px; }
@media (max-width: 700px) {
  .section, .jb-section { padding-block: 38px; }
  .showcase-hero { padding-top: 46px; padding-bottom: 24px; }
  .showcase-groups { padding-bottom: 18px; }
  .showcase-group { margin-bottom: 26px; }
  .model-more { flex-wrap: wrap; margin-top: -4px; }
}

/* 2026-10: bring actual customer photography into the first viewport. */
.hero { padding-top: clamp(28px, 4vw, 48px); }
.hero h1 { font-size: clamp(38px, 6vw, 60px); margin-bottom: 10px; }
.hero .v12-model-search { margin-top: 16px; }
.hero .trust-bar { margin-top: 12px; }
.hero-visual { margin-top: 20px; min-height: 240px; max-height: 420px; text-decoration: none; }
.hero-services .service-grid { margin-top: 22px; }
.svc-ico { display: inline-flex; align-items: center; color: var(--tk-link, #0066cc); }
.svc-ico svg { width: 26px; height: 26px; }
.showcase-hero { padding-top: clamp(32px, 4vw, 56px); padding-bottom: 18px; }
.showcase-hero h1 { font-size: clamp(44px, 6vw, 76px); }
.showcase-hero p { line-height: 1.55; }
.showcase-empty { padding: 38px 20px; }

@media (max-width: 700px) {
  .hero { padding-top: 26px; }
  .hero-visual { min-height: 210px; aspect-ratio: 4 / 3; margin-top: 16px; }
  .hero-services .service-grid { margin-top: 16px; }
  .showcase-hero { padding-top: 30px; padding-bottom: 16px; }
  .showcase-hero h1 { margin-bottom: 12px; }
  .showcase-hero p { font-size: 14px; line-height: 1.45; }
  .showcase-quality-note { margin-top: 10px; padding: 9px 12px; }
  .showcase-stats { margin-top: 18px; gap: 12px; }
  .showcase-stats b { font-size: 18px; }
  .showcase-body .showcase-toolbar { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .showcase-toolbar .view-switch, .showcase-toolbar .showcase-search { grid-column: 1 / -1; }
  .showcase-toolbar .showcase-filter { min-width: 0; padding-inline: 8px; }
  .showcase-toolbar .showcase-filter span { display: none; }
  .showcase-toolbar .showcase-filter select { width: 100%; min-width: 0; }
  .showcase-toolbar .featured-filter, .showcase-toolbar .share-current-button { min-width: 0; }
}
