/* Original FIAR line drawings. Each scene is animated locally and has a static fallback. */
.onboarding-section{background:#fff}
.flow-heading{text-align:center;max-width:940px;margin:0 auto 34px}
.flow-heading h2{font-size:clamp(32px,3.4vw,43px);line-height:1.25;letter-spacing:-1.2px;margin:15px 0 20px}
.flow-heading h2 span{color:#007e95}
.flow-heading>p:last-child{font-size:14px;line-height:1.95;color:#647681;max-width:700px;margin:0 auto}
.fiar-flow{--flow-duration:5800ms;position:relative;max-width:1120px;margin:0 auto}
.flow-defs{position:absolute;overflow:hidden;pointer-events:none}
.flow-navigation,.flow-toolbar{display:none}
.is-enhanced .flow-navigation{display:block;max-width:1050px;margin:0 auto}
.flow-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}
.flow-steps button{position:relative;display:block;width:100%;min-height:79px;padding:10px 10px 15px;border:0;background:white;color:#71838c;font:inherit;cursor:pointer;text-align:center;border-radius:5px;transition:color .2s,background .2s}
.flow-steps button:hover{color:#007e95;background:#f7fbfc}
.flow-steps button[aria-pressed="true"]{color:#254f65;background:#f2f9fb}
.flow-steps button:focus-visible,.flow-motion:focus-visible{outline:3px solid #0097b2;outline-offset:4px}
.flow-step-number{display:block;color:#0097b2;font-size:10px;font-weight:700;letter-spacing:2px;margin-bottom:8px}
.flow-step-label{display:block;font-size:12px;line-height:1.5;font-weight:600;max-width:180px;margin:auto}
.flow-track{height:2px;background:#e4eff2;overflow:hidden;margin-top:8px}
.flow-track>span{display:block;width:100%;height:100%;background:#0097b2;transform:scaleX(0);transform-origin:left}
.is-enhanced .flow-toolbar{display:flex;align-items:center;justify-content:center;gap:20px;min-height:38px;margin:21px auto 2px}
.flow-counter{font-size:9px;letter-spacing:2px;color:#79909b;font-variant-numeric:tabular-nums}
.flow-motion{display:inline-flex;align-items:center;gap:8px;border:1px solid #deeaee;border-radius:30px;background:white;padding:7px 12px;min-height:36px;color:#647b86;font:inherit;font-size:10px;cursor:pointer}
.flow-motion[hidden]{display:none}
.flow-motion svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.flow-play-mark{display:none}
.flow-motion[aria-pressed="true"] .flow-pause-mark{display:none}
.flow-motion[aria-pressed="true"] .flow-play-mark{display:block}
.flow-panel{max-width:1000px;margin:0 auto}
.flow-frame{margin:0 auto 35px;text-align:center}
.is-enhanced .flow-frame{display:none;margin:0}
.is-enhanced .flow-frame.is-active{display:block}
.flow-illustration{display:block;width:100%;height:auto;fill:none;stroke:#315f76;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.fiar-flow .flow-white{fill:#fff}
.fiar-flow .flow-paper{fill:#f7fbfc}
.fiar-flow .flow-tint{fill:#d9f0f4;stroke:#8ec7d3}
.fiar-flow .flow-accent{fill:#0097b2;stroke:#008ba2}
.fiar-flow .flow-accent-line{stroke:#0097b2;stroke-width:2.8}
.fiar-flow .flow-distance{stroke:#d6e6ed;stroke-width:1.6;fill:none}
.fiar-flow .flow-field{fill:#fff;stroke:#c6dfe7;stroke-width:1.6}
.fiar-flow .flow-fill-line{stroke:#a7cbd9;stroke-width:2.5}
.flow-illustration text{fill:#315f76;stroke:none;font-family:Inter,Arial,sans-serif}
.flow-ui-title{font-size:21px;font-weight:600}
.flow-ui-text{font-size:16px}
.flow-ui-small{font-size:13px}
.fiar-flow .flow-button-text{fill:white;stroke:none;font-size:13px;font-weight:600;text-anchor:middle}
.flow-role-text{font-size:13px;font-weight:600;text-anchor:middle}
.fiar-flow .flow-check{stroke:#0097b2;stroke-width:2.8;stroke-dasharray:1;stroke-dashoffset:0}
.flow-scan-fill{fill:#12a5bd;fill-opacity:.1;stroke:none}
.fiar-flow .flow-pen-body{fill:#c3e4eb;stroke:#315f76}
.fiar-flow .flow-document-back{stroke:#c1dbe5}
.fiar-flow .flow-signature{stroke:#007e95;stroke-width:2.5;stroke-dasharray:1;stroke-dashoffset:0}
.flow-caption{max-width:650px;margin:3px auto 0;min-height:91px}
.flow-caption h3{font-size:27px;line-height:1.35;letter-spacing:-.7px;margin:0 0 12px;color:#263e4a}
.flow-caption p{font-size:13px;line-height:1.9;color:#647681;margin:0}
.fiar-flow .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.is-enhanced .is-active .flow-row,.is-enhanced .is-active .flow-agent,.is-enhanced .is-active .flow-role{animation:flow-reveal .65s var(--delay,0s) both}
.is-enhanced .is-active .flow-check{animation:flow-ink .55s var(--delay,0s) both}
.is-enhanced .is-active .flow-phone-fill{animation:flow-reveal .65s 1.9s both}
.is-enhanced .is-active .flow-upload{animation:flow-upload 3.3s .15s both}
.is-enhanced .is-active .flow-cursor{animation:flow-cursor 3.5s .5s both}
.flow-click-ring{stroke:#0097b2;opacity:0;fill:none}
.is-enhanced .is-active .flow-click-ring{animation:flow-click .8s 2.9s both}
.is-enhanced .is-active .flow-scan{animation:flow-scan 3.8s .1s both}
.is-enhanced .is-active .flow-review-paper{animation:flow-opacity .6s .1s both}
.is-enhanced .is-active .flow-review-dots{animation:flow-pulse 1.6s 1s infinite}
.is-enhanced .is-active .flow-signature{animation:flow-ink 2.6s 1s both}
.is-enhanced .is-active .flow-signing-pen{animation:flow-write var(--flow-duration) linear both}
.is-enhanced .is-active .flow-signed-badge{animation:flow-reveal .6s 4s both}
.is-enhanced .is-active .flow-route{stroke-dasharray:1;animation:flow-ink 1.2s var(--delay,0s) both}
.is-enhanced .is-active .flow-connection-pulse{animation:flow-pulse 1.5s 2.5s infinite}
.is-paused .flow-animated,.is-paused .flow-route,.is-suspended .flow-animated,.is-suspended .flow-route{animation-play-state:paused!important}
.is-reduced .flow-animated,.is-reduced .flow-route,.is-static .flow-animated,.is-static .flow-route{animation:none!important}
.is-static .flow-scan,.is-reduced .flow-scan{opacity:0}
@keyframes flow-reveal{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@keyframes flow-opacity{from{opacity:0}to{opacity:1}}
@keyframes flow-ink{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes flow-upload{0%{opacity:0;transform:translate(-12px,25px)}20%,40%{opacity:1;transform:translate(0,0)}85%,100%{opacity:0;transform:translate(55px,-35px)}}
@keyframes flow-cursor{0%,30%{transform:translate(34px,-38px)}65%,100%{transform:translate(0,0)}}
@keyframes flow-click{0%{opacity:0;transform:scale(.4)}40%{opacity:.65}100%{opacity:0;transform:scale(1.4)}}
@keyframes flow-scan{0%{opacity:0;transform:translateY(0)}10%{opacity:1}85%{opacity:1;transform:translateY(138px)}100%{opacity:0;transform:translateY(138px)}}
@keyframes flow-pulse{0%,100%{opacity:.25}50%{opacity:1}}
@keyframes flow-write{0%,13%{transform:translate(-20px,-35px) rotate(-8deg)}18%{transform:translate(0,0)}27%{transform:translate(32px,-9px)}35%{transform:translate(63px,1px)}43%{transform:translate(93px,-13px)}51%{transform:translate(127px,-4px)}60%{transform:translate(171px,-10px)}72%,100%{transform:translate(208px,-38px) rotate(12deg)}}
@media(prefers-reduced-motion:reduce){.flow-animated,.flow-route{animation:none!important}.flow-steps button{transition:none}}
@media(max-width:1000px){.flow-steps{gap:6px}.flow-steps button{padding-inline:5px}.flow-step-label{font-size:11px}}
@media(max-width:700px){
 .flow-heading{margin-bottom:24px}.flow-heading h2{font-size:32px;letter-spacing:-.9px}.flow-heading>p:last-child{font-size:13px}
 .flow-steps{gap:5px}.flow-steps button{min-height:45px;padding:10px 5px}.flow-step-number{font-size:12px;margin:0}
 .flow-step-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
 .is-enhanced .flow-toolbar{margin-top:17px;margin-bottom:12px}.flow-illustration{width:calc(100% + 24px);height:clamp(215px,64vw,285px);max-width:none;margin-inline:-12px}
 .flow-motion{min-height:44px}.flow-caption{margin-top:10px;min-height:125px}.flow-caption h3{font-size:23px;letter-spacing:-.45px}.flow-caption p{font-size:12px;max-width:320px;margin:auto}
}
