/* Phone and tablet refinements. The approved desktop composition stays intact. */
@media (max-width: 1199px) {
  .b85-wrap { padding-inline: clamp(24px, 4vw, 40px); }
  .b85-section-head, .b85-split { gap: 30px; }
  .b85-section .text-link, .info-v85 .text-link, .info-actions a { min-height: 44px; align-items: center; }
  .b85-section .btn-primary, .info-v85 .btn-primary { min-height: 48px; }
  .b85-steps p { font-size: 14px; line-height: 1.65; }
  .b85-steps h3 { font-size: 15px; }
  body.home .category-edit > span { min-height: 48px; align-items: center; }
  body.home .category-other a { display: inline-flex; min-height: 44px; align-items: center; }
  body.home .b85-home-hero { min-height: 680px; }
  body.home .b85-home-hero .collection-home-copy { width: 70%; padding: 48px 32px; }
  body.home .b85-home-hero h1 { font-size: clamp(35px, 4.2vw, 46px); }
  body.home .b85-home-hero figure { width: 82%; }
  body.home .b85-home-hero::after { background: linear-gradient(90deg, #080907e8 0%, #080907d9 30%, #080907b8 72%, #08090712 100%); }
  body.home .b85-home-hero .editorial-actions { gap: 10px 22px; }
  body.home .b85-home-hero .btn-primary { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; }
  body.home .b85-home-hero .text-link { min-height: 44px; display: inline-flex; align-items: center; }
}
@media (min-width: 761px) and (max-width: 900px) {
  body.home .b85-home-hero .collection-home-copy { width: 76%; }
  body.home .b85-home-hero figure { width: 100%; }
  body.home .b85-home-hero figure img { object-position: 64% center; }
  .b85-section-head { grid-template-columns: 1fr; gap: 20px; }
  .b85-section-head > h2 { max-width: 24ch; }
  .b85-grid { gap: 24px; }
  .b85-route-grid { gap: 30px; }
  .b85-route-grid h3 { font-size: 30px; }
}
@media (max-width: 760px) {
  /* Undo the old static figure + column split: text and image share one hero. */
  body.home .b85-home-hero { display: flex; flex-direction: row; align-items: center; isolation: isolate; min-height: min(800px, calc(100svh - 66px)); }
  body.home .b85-home-hero figure { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -2; }
  body.home .b85-home-hero figure img { object-fit: cover; object-position: 60% center; }
  body.home .b85-home-hero::after { display: block; z-index: -1; background: linear-gradient(180deg, #08090775 0%, #08090785 24%, #080907c9 57%, #080907f0 100%), linear-gradient(90deg, #08090775, #08090715); }
  body.home .b85-home-hero .collection-home-copy { width: 100%; padding: 44px 24px 36px; }
  body.home .b85-home-hero h1 { font-size: clamp(31px, 8.5vw, 36px); line-height: 1.12; max-width: 17ch; text-wrap: balance; }
  body.home .b85-home-hero p { font-size: 14px; line-height: 1.7; margin-top: 20px; max-width: 42ch; }
  body.home .b85-home-hero .b85-lead { font-size: 16px; line-height: 1.6; }
  body.home .b85-home-hero .b85-hero-note { font-size: 13px; line-height: 1.65; margin-top: 20px; color: #e1dacf; }
  body.home .b85-home-hero .editorial-actions { align-items: stretch; gap: 8px; margin-top: 25px; }
  body.home .b85-home-hero .btn-primary { font-size: 11px; padding: 15px 18px; }
  body.home .b85-home-hero .text-link { align-self: flex-start; font-size: 14px; }
  .b85-wrap { padding-inline: 24px; }
  body:is(.home, .site-page) .b85-section h1 { font-size: 33px; }
  body:is(.home, .site-page) .b85-section h2 { font-size: 29px; }
  .b85-section-head, .b85-split { gap: 22px; }
  .b85-grid { gap: 24px 20px; }
  .b85-grid article p { font-size: 14px; line-height: 1.65; }
  .b85-steps { grid-template-columns: 1fr; gap: 0; margin-top: 24px; }
  .b85-steps li { display: grid; grid-template-columns: 27px minmax(0, 1fr); gap: 5px 15px; padding: 18px 0; }
  .b85-steps .b85-number { grid-row: 1 / span 2; margin: 2px 0 0; font-size: 12px; }
  .b85-steps h3, .b85-steps p { margin: 0; }
  .b85-section .editorial-actions { align-items: stretch; gap: 10px 20px; }
  .b85-section .editorial-actions .btn-primary { max-width: 100%; }
  body.home .reference-footer .container, body.site-page .reference-footer .container { padding-inline: 24px; }
  body.home .reference-footer .foot-col a, body.site-page .reference-footer .foot-col a { min-height: 44px; display: flex; align-items: center; font-size: 14px; }
}
@media (max-width: 360px) {
  body.home .b85-home-hero .collection-home-copy { padding-inline: 20px; }
  .b85-wrap { padding-inline: 20px; }
  .b85-grid { column-gap: 16px; }
  .b85-grid article p { font-size: 13px; }
}
