/* Global accessibility fixes shared by all pages (loaded after the page styles' fonts). */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,label:focus-visible{outline:2px solid #FCC0D9;outline-offset:3px}
@media (max-width:700px){
  /* comfortable tap targets for footer social links and standalone text links */
  footer nav a{display:inline-flex!important;align-items:center;min-height:44px}
  a[style*="text-underline-offset"]{display:inline-block;padding-top:10px;padding-bottom:10px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* Calmer reading text on larger screens (2026-10-28): body copy was 18–22px with very loose
   line-height. Montserrat text now sits at 16–18px with line-height 1.65. Display type
   (Archivo, Rottersand: any element with an inline font-family) is left alone. */
@media (min-width:761px){
  .hv-page :is(.ab-p,.hg-lead,.hg-way-lead,.k-lead,.w-p),
  .hv-page :is(p,li,blockquote):is([style*="font-size: 22px"],[style*="font-size: 21px"]):not([style*="font-family"]){font-size:18px!important;line-height:1.65!important}
  .hv-page :is(.w-pil-p,.hv-otext),
  .hv-page :is(p,li,blockquote):is([style*="font-size: 20px"],[style*="font-size: 19px"]):not([style*="font-family"]){font-size:17px!important;line-height:1.65!important}
  .hv-page :is(.w-how-p,.hg-check,.hg-fdesc),
  .hv-page :is(p,li,blockquote):is([style*="font-size: 18px"],[style*="font-size: 17px"]):not([style*="font-family"]){font-size:16px!important;line-height:1.65!important}
  /* comfortable line length (~70 characters) for long paragraphs */
  .hv-page .rd{max-width:680px!important}
  .hv-page .rd-c{max-width:680px!important;margin-left:auto!important;margin-right:auto!important}
  .hv-page :is(p,li,blockquote):is(:not([class]),[class="hvr"],[class="rd"],[class="rd hvr"],[class="rd-c"],[class="rd-c hvr"]):not([style*="font-size"]):not([style*="font-family"]){font-size:min(1em,17px)!important;line-height:1.65!important}
}
