/* Focused usability repairs; existing design and copy are preserved. */
.about-body p a:not(.btn) {
  text-decoration: underline;
  text-decoration-thickness: .08em;
  text-underline-offset: .18em;
  text-decoration-skip-ink: auto;
}
.about-body p a:not(.btn):hover { text-decoration-thickness: .14em; }
.about-body p a:not(.btn):focus-visible {
  outline: 3px solid currentColor;
  outline-offset: 4px;
  border-radius: 2px;
}
/* The About reading column fits two useful steps, not four narrow ones. */
.about-body .process__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
@media (max-width:600px) {
  .about-body .process__grid { grid-template-columns: minmax(0,1fr); }
}
/* Keep icon containers and their masks square inside flex rows. */
.includes-item .service-card__icon { flex: 0 0 46px; width:46px; height:46px; }
.includes-item .service-card__icon::before { flex:0 0 22px; }
.includes-item > div:last-child { min-width:0; }
/* Section has 64px top padding on phones; 24px margin clears 76px header
   with 12px breathing room, without changing document spacing. */
#contact { scroll-margin-top:24px; }
/* Font-independent decorative arrows; parent labels retain their meaning. */
.link-arrow { display:inline-block; width:1em; height:1em; flex:none; vertical-align:-.12em; }
