/* Session 3: production polish, accessibility, and conversion hardening */

/* Homepage tools: keep trust badge and CTA on one stable baseline. */
.home-v2 .home-tools .tool-card .tool-card-actions{
  margin-top:auto;
  padding-top:18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid var(--color-border);
}
.home-v2 .home-tools .tool-card .tool-card-actions .no-email-badge,
.home-v2 .home-tools .tool-card .tool-card-actions .use-free{
  margin:0;
}
.home-v2 .home-tools .tool-card .tool-card-actions .use-free{
  white-space:nowrap;
}

/* Better contrast without changing the visual identity. */
.home-v2 .lead,
.home-v2 .discipline-card p,
.home-v2 .world-card p,
.home-v2 .service-card p,
.home-v2 .project-card p,
.home-v2 .tool-card p,
.home-v2 .article-card p,
.xp-page .lead,
.xp-page .xp-card p,
.xp-page .xp-prose{
  color:color-mix(in srgb,var(--color-text) 72%,var(--color-muted));
}

/* Consistent, visible keyboard focus across the public experience. */
.home-v2 :where(a,button,input,select,textarea,[tabindex]):focus-visible,
.xp-page :where(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid var(--color-cyan);
  outline-offset:3px;
  box-shadow:0 0 0 6px rgba(0,212,255,.13);
}

/* Avoid layout shifts from content media. */
.xp-page .dynamic-prose img,
.xp-page .xp-prose img,
.home-v2 main img{
  max-width:100%;
  height:auto;
}

/* Lightweight conversion feedback. */
[data-conversion-link]{position:relative}
[data-conversion-link].is-clicked{transform:translateY(1px)}

/* Screen-reader utility used by production audit components. */
.sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

@media(max-width:620px){
  .home-v2 .home-tools .tool-card .tool-card-actions{
    gap:8px;
  }
  .home-v2 .home-tools .tool-card .tool-card-actions .no-email-badge,
  .home-v2 .home-tools .tool-card .tool-card-actions .use-free{
    font-size:12px;
  }
}

@media(prefers-reduced-motion:reduce){
  .home-v2 *,
  .xp-page *{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}
