.skip-link { position:absolute; left:1rem; top:-6rem; padding:.8rem 1rem; background:white; z-index:30; }
.skip-link:focus { top:1rem; }
:focus-visible { outline:3px solid #208594; outline-offset:4px; }
nav a[aria-current="page"] { color:#0f172a; font-weight:700; text-decoration:underline; text-underline-offset:6px; }
.ai-service-link { grid-column:1 / -1; border-left:4px solid #208594; }
.ai-service-link p { max-width:56rem; }
.assessment-invitation { padding:1.5rem; margin-top:1.5rem; display:flex; gap:2rem; align-items:center; border-left:4px solid #208594; }
.assessment-invitation h3 { margin:.3rem 0; }
.assessment-invitation p { color:var(--muted); margin:.5rem 0 0; }
.assessment-invitation .button { flex-shrink:0; }
.contact-card .email { overflow-wrap:anywhere; }
.process-flow { list-style:none; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:0; margin:0 0 2rem; }
.process-flow li { position:relative; }
.process-flow li:not(:last-child)::before { content:""; position:absolute; top:28px; left:57px; width:calc(100% - 69px); height:1px; background:#b7ccd2; }
.process-flow li:not(:last-child)::after { content:""; position:absolute; top:25px; right:12px; width:6px; height:6px; border-top:1px solid #779ba5; border-right:1px solid #779ba5; transform:rotate(45deg); }
.process-flow a { display:flex; flex-direction:column; align-items:flex-start; gap:.8rem; border-radius:12px; width:fit-content; max-width:calc(100% - 1rem); }
.process-symbol { display:grid; place-items:center; width:56px; height:56px; border:1px solid #c3d7dc; border-radius:50%; background:#f0f6f7; color:#1e596a; }
.process-symbol svg { width:28px; height:28px; }
.process-title { display:block; font-weight:650; font-size:1.1rem; color:#1e3a5f; }
.process-title small { font-size:.73rem; font-weight:600; color:#597581; margin-right:.3rem; }
.process-caption { display:block; font-size:.86rem; color:var(--muted); margin-top:.15rem; }
.process-flow a:hover .process-title { text-decoration:underline; text-underline-offset:4px; }
[id^="step-"] { scroll-margin-top:8rem; }
@media (max-width:1100px) {
  .site-header .container { flex-wrap:wrap; }
  nav { display:flex; flex-wrap:wrap; gap:.6rem 1.1rem; }
}
@media (max-width:860px) {
  .site-header { position:static; }
  .site-header .container { flex-direction:column; align-items:flex-start; gap:.9rem; }
  .brand-logo { height:54px; }
  nav { display:flex; font-size:.87rem; }
  .assessment-invitation { flex-direction:column; align-items:flex-start; gap:1rem; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .button { transition:none; } }
@media (max-width:640px) {
  .process-flow { grid-template-columns:1fr; gap:1rem; }
  .process-flow a { flex-direction:row; align-items:center; gap:1rem; max-width:100%; }
  .process-flow li:not(:last-child)::before { top:57px; left:27px; width:1px; height:15px; }
  .process-flow li:not(:last-child)::after { top:66px; left:24px; right:auto; transform:rotate(135deg); }
  .process-symbol { flex-shrink:0; }
  [id^="step-"] { scroll-margin-top:1rem; }
}
