/* ---- phases stepper: [lsf_roadmap] ----------------------------------------------- */
.lsf-st{--st-navy:#0C2C5A;--st-red:#E12228;--st-ered:#C41017;--st-light:#EEF1F8;--st-line:#D5DEEB;--st-body:#52606D;font-family:Inter,system-ui,sans-serif;color:var(--st-navy)}
.lsf-st-steps{position:relative;display:grid;grid-template-columns:repeat(var(--st-n),minmax(0,1fr));gap:12px;margin-bottom:28px}
.lsf-st-track{position:absolute;left:calc(50% / var(--st-n));right:calc(50% / var(--st-n));top:27px;height:4px;border-radius:4px;background:var(--st-line)}
.lsf-st-fill{display:block;height:100%;width:0;border-radius:4px;background:linear-gradient(90deg,var(--st-navy),var(--st-red));transition:width .5s ease}
.lsf-st-step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:10px;background:none !important;border:0 !important;box-shadow:none !important;cursor:pointer;padding:0 6px !important;color:var(--st-navy) !important;font-family:Poppins,system-ui,sans-serif}
.lsf-st-step:focus-visible{outline:3px solid #F9A61A;outline-offset:4px;border-radius:12px}
.lsf-st-num{width:58px;height:58px;border-radius:999px;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid var(--st-line);font:800 17px/1 Poppins,system-ui,sans-serif;color:var(--st-navy);transition:all .3s}
.lsf-st-step.is-done .lsf-st-num{background:var(--st-navy);border-color:var(--st-navy);color:#fff}
.lsf-st-step.is-on .lsf-st-num{background:var(--st-red);border-color:var(--st-red);color:#fff;box-shadow:0 0 0 7px #FCE9EA}
.lsf-st-step{min-width:0;white-space:normal !important;text-transform:none !important;letter-spacing:normal !important}
.lsf-st-name{display:block;max-width:100%;font:500 15px/1.3 Poppins,system-ui,sans-serif;text-align:center;color:var(--st-body);white-space:normal;overflow-wrap:break-word;hyphens:auto}
.lsf-st-step.is-on .lsf-st-name{font-weight:600;color:var(--st-navy)}
.lsf-st-panels{display:flex;flex-direction:column;gap:18px}
.lsf-st-panel{display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:center;background:var(--st-light);border-radius:24px;padding:22px 44px 22px 22px}
.lsf-st-img{border-radius:18px;overflow:hidden;aspect-ratio:3/2;background:#DDE5F0}
.lsf-st-img img{display:block;width:100%;height:100%;object-fit:cover}
.lsf-st-label{margin:0;font:700 12px/1.2 Poppins,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--st-ered)}
.lsf-st-title{margin:6px 0 10px !important;font:500 28px/1.25 Poppins,system-ui,sans-serif !important;color:var(--st-navy) !important}
.lsf-st-text{margin:0;font-size:16px;line-height:1.68;color:var(--st-body)}
.lsf-st-foot{display:none;align-items:center;gap:14px;margin-top:24px;flex-wrap:wrap}
.lsf-st-foot button{display:inline-flex;align-items:center;gap:8px;border:0;cursor:pointer;border-radius:999px;padding:13px 22px;font:700 13px/1 Poppins,system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;background:var(--st-red);color:#fff;transition:background .2s}
.lsf-st-foot button:hover{background:var(--st-ered)}
.lsf-st-foot .lsf-st-prev{background:#fff;color:var(--st-navy)}
.lsf-st-foot .lsf-st-prev:hover{background:#fff;color:var(--st-red)}
.lsf-st-foot button[disabled]{opacity:.4;cursor:default}
.lsf-st-foot button:focus-visible{outline:3px solid #F9A61A;outline-offset:2px}
.lsf-st-of{font:600 14px/1 Poppins,system-ui,sans-serif;color:var(--st-body)}
/* with the script: one panel at a time */
.lsf-st.is-js .lsf-st-panel{display:none}
.lsf-st.is-js .lsf-st-panel.is-on{display:grid;animation:lsf-st-in .45s ease}
.lsf-st.is-js .lsf-st-foot{display:flex}
@keyframes lsf-st-in{from{opacity:.25;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.lsf-st-fill,.lsf-st-num{transition:none}.lsf-st.is-js .lsf-st-panel.is-on{animation:none}}
@media (max-width:860px){
 .lsf-st-panel{grid-template-columns:1fr;gap:20px;padding:14px 14px 22px}
 .lsf-st-copy{padding:0 6px}
 .lsf-st-title{font-size:22px !important}
 .lsf-st-num{width:46px;height:46px;font-size:15px}
 .lsf-st-track{top:21px}
 .lsf-st-name{font-size:12.5px}
 .lsf-st-step{gap:8px;padding:0 2px !important}
}
