/* Zoho Learn page only. Loaded via `extra: crm, mid, p-learn`. Every class is scoped with .plr- */
.plr-hero, .plr-edges, .plr-cb, .plr-bld, .plr-price, .plr-vs, .plr-mig { --lr: #5B45D6; --lr-bg: #EEEBFD; }

/* ---------- shared: drawn Zoho Learn mark (no logo file in assets yet) ---------- */
.plr-mark { display: inline-grid; place-items: center; flex: none; width: 30px; height: 30px; border-radius: 9px; background: linear-gradient(135deg, #5B45D6, #00A3D9); }
.plr-mark svg { width: 20px; height: 20px; fill: none; stroke: #fff; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.plr-mark--sm { width: 22px; height: 22px; border-radius: 7px; margin-right: 10px; vertical-align: -6px; }
.plr-mark--sm svg { width: 15px; height: 15px; }

/* ---------- hero: course path unlocking ---------- */
.plr-hero .plr-hero__grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
.plr-hero .crm-sub { max-width: 38ch; }
.plr-tops { display: flex; flex-wrap: wrap; gap: 8px; margin: 22px 0 0; padding: 0; list-style: none; max-width: 580px; }
.plr-tops li { display: inline-flex; align-items: center; gap: 8px; padding: 8px 13px 8px 9px; border-radius: 999px; background: #fff; border: 1px solid #E0DCF5; font: 600 13.5px/1.3 var(--f-body); color: #082238; box-shadow: 0 10px 20px -16px rgba(8,34,56,.5); }
.plr-tops svg { flex: none; width: 22px; height: 22px; padding: 3px; border-radius: 7px; background: var(--lr-bg); fill: none; stroke: var(--lr); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

.plr-hp { position: relative; margin: 0; padding: 18px 26px 54px 0; }
.plr-hp__win { position: relative; border-radius: 22px; background: #fff; border: 1px solid #E2E8F0; box-shadow: 0 50px 90px -48px rgba(8,34,56,.6); overflow: hidden; will-change: transform; }
.plr-hp__top { display: flex; align-items: center; gap: 10px; padding: 14px 18px; border-bottom: 1px solid #EEF2F6; background: #FAFBFF; }
.plr-hp__top b { font: 700 15px/1.3 var(--f-display); color: #082238; }
.plr-hp__tag { padding: 4px 9px; border-radius: 99px; background: var(--lr-bg); font: 600 11.5px/1 var(--f-body); color: var(--lr); }
.plr-hp__top em { margin-left: auto; font: 600 11px/1 var(--f-body); font-style: normal; color: #64748B; padding: 4px 8px; border-radius: 99px; background: #F3F7F9; }
.plr-hp__body { position: relative; padding: 14px 18px 8px; }
.plr-hp__line { position: absolute; left: 30px; top: 30px; width: 40px; height: calc(100% - 60px); overflow: visible; }
.plr-hp__line path { fill: none; stroke-width: 3; stroke-linecap: round; vector-effect: non-scaling-stroke; }
.plr-hp__rail { stroke: #E2E8F0; stroke-dasharray: 2 7; }
.plr-hp__run { stroke: var(--lr); stroke-dasharray: 100; stroke-dashoffset: var(--run, 100); transition: stroke-dashoffset .8s cubic-bezier(.4,.1,.2,1); }
.plr-hp__list { position: relative; list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.plr-hn { display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; align-items: center; gap: 14px; padding: 10px 12px 10px 21px; border-radius: 14px; transition: background .5s, opacity .5s; opacity: .55; }
.plr-hn__dot { position: relative; width: 26px; height: 26px; margin-left: -12px; border-radius: 50%; background: #fff; border: 2px solid #CBD5E1; transition: background .4s, border-color .4s, transform .4s; }
.plr-hn__dot::after { content: ""; position: absolute; inset: 0; margin: auto; width: 8px; height: 9px; border: 2px solid #94A3B8; border-radius: 2px; top: 5px; }
.plr-hn__t { display: grid; gap: 2px; min-width: 0; }
.plr-hn__t b { font: 650 14.5px/1.3 var(--f-body); color: #082238; }
.plr-hn__t small { font: 500 12.5px/1.35 var(--f-body); color: #64748B; }
.plr-hn__s { font: 700 11.5px/1 var(--f-body); color: #94A3B8; white-space: nowrap; }
.plr-hn__s::before { content: "Locked"; }
.plr-hn.is-open { opacity: 1; background: color-mix(in srgb, var(--c) 9%, #fff); }
.plr-hn.is-open .plr-hn__dot { border-color: var(--c); transform: scale(1.08); }
.plr-hn.is-open .plr-hn__dot::after { width: 0; height: 0; border: 0; top: 0; border-left: 8px solid var(--c); border-top: 5px solid transparent; border-bottom: 5px solid transparent; margin: auto auto auto 9px; }
.plr-hn.is-open .plr-hn__s { color: var(--c); } .plr-hn.is-open .plr-hn__s::before { content: "In progress"; }
.plr-hn.is-done { opacity: 1; background: transparent; }
.plr-hn.is-done .plr-hn__dot { background: var(--c); border-color: var(--c); }
.plr-hn.is-done .plr-hn__dot::after { width: 9px; height: 5px; border: 0; border-left: 2.5px solid #fff; border-bottom: 2.5px solid #fff; border-radius: 0; transform: rotate(-45deg); top: -2px; margin: auto; }
.plr-hn.is-done .plr-hn__s { color: #15803D; } .plr-hn.is-done .plr-hn__s::before { content: "Done"; }
.plr-hp__foot { display: flex; align-items: center; gap: 12px; padding: 12px 18px 16px; }
.plr-hp__bar { flex: 1; height: 8px; border-radius: 99px; background: #EEF2F6; overflow: hidden; }
.plr-hp__bar i { display: block; height: 100%; width: var(--pct, 0%); border-radius: inherit; background: linear-gradient(90deg, #5B45D6, #00A3D9, #3FB97A); transition: width .8s cubic-bezier(.4,.1,.2,1); }
.plr-hp__count { font: 700 13px/1 var(--f-body); color: #082238; white-space: nowrap; }
.plr-hp__badge { position: absolute; right: 0; top: 46%; display: flex; align-items: center; gap: 10px; padding: 10px 14px 10px 10px; border-radius: 16px; background: #082238; color: #fff; box-shadow: 0 24px 40px -22px rgba(8,34,56,.8); opacity: 0; transform: translateX(16px) scale(.85); transition: opacity .4s, transform .6s cubic-bezier(.2,1.5,.4,1); }
.plr-hp__badge svg { width: 40px; height: 40px; fill: none; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.plr-hp__badge circle { fill: #FFB81C; stroke: #FFB81C; } .plr-hp__badge path { stroke: #FFB81C; } .plr-hp__badge path.ck { stroke: #082238; }
.plr-hp__badge span { display: grid; font: 500 12px/1.35 var(--f-body); color: #CBD5E1; } .plr-hp__badge b { font: 700 14px/1.25 var(--f-display); color: #fff; }
.plr-hp__cert { position: absolute; left: 22px; bottom: 6px; display: inline-flex; align-items: center; gap: 9px; padding: 10px 14px; border-radius: 12px; background: #fff; border: 1px solid #BFE6CF; font: 600 13px/1.3 var(--f-body); color: #14532D; box-shadow: 0 20px 34px -24px rgba(8,34,56,.6); opacity: 0; transform: translateY(12px); transition: opacity .4s, transform .5s; }
.plr-hp__cert i { width: 10px; height: 10px; border-radius: 50%; background: #1E9E62; box-shadow: 0 0 0 4px #D6F2E2; }
.plr-hp__cert em { font-style: normal; font-size: 11px; color: #64748B; }
.plr-hp.has-badge .plr-hp__badge { opacity: 1; transform: none; }
.plr-hp.has-cert .plr-hp__cert { opacity: 1; transform: none; }

/* ---------- edges: lesson-card shelf ---------- */
.plr-shelf { list-style: none; margin: 34px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.plr-edge { position: relative; padding: 0 22px 22px; border-radius: 20px; background: #fff; border: 1px solid #E2E8F0; box-shadow: 0 30px 50px -44px rgba(8,34,56,.5); overflow: hidden; }
.plr-edge::before { content: ""; display: block; height: 6px; margin: 0 -22px 16px; background: var(--c); }
.plr-edge--wide { grid-column: span 2; }
.plr-edge__mod { margin: 0 0 12px; font: 800 11.5px/1 var(--f-body); letter-spacing: .1em; text-transform: uppercase; color: var(--c); }
.plr-edge h3 { margin: 14px 0 6px; font: 700 18.5px/1.3 var(--f-display); letter-spacing: -.01em; color: #082238; }
.plr-edge p:not([class]) { margin: 0; font-size: 15px; line-height: 1.58; color: #334155; }
.plr-edge__vis { display: flex; align-items: center; gap: 8px; min-height: 58px; padding: 10px 12px; border-radius: 14px; background: color-mix(in srgb, var(--c) 8%, #fff); font: 600 12.5px/1.3 var(--f-body); color: #082238; }
.plr-vis-twin span { display: grid; gap: 2px; padding: 8px 10px; border-radius: 10px; background: #fff; border: 1px solid #E2E8F0; font-weight: 500; color: #475569; }
.plr-vis-twin span b { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--c); }
.plr-vis-twin i { flex: 1; height: 2px; min-width: 30px; background: repeating-linear-gradient(90deg, var(--c) 0 6px, transparent 6px 11px); }
.plr-vis-seats i { width: 22px; height: 22px; border-radius: 50%; background: var(--c); opacity: .85; box-shadow: inset 0 -7px 0 rgba(255,255,255,.35); }
.plr-vis-seats b { margin-left: auto; font: 800 22px/1 var(--f-display); color: var(--c); }
.plr-vis-zip span { flex: 1; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 12px; font-weight: 500; color: #334155; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plr-vis-zip b { padding: 5px 9px; border-radius: 8px; background: var(--c); color: #fff; font-size: 11.5px; letter-spacing: .06em; }
.plr-vis-score { position: relative; flex-wrap: wrap; }
.plr-vis-score span { flex: 1 1 100%; position: relative; height: 10px; border-radius: 99px; background: #fff; border: 1px solid #F3D3BE; }
.plr-vis-score span::before { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--w); border-radius: inherit; background: var(--c); }
.plr-vis-score span::after { content: ""; position: absolute; left: 80%; top: -5px; bottom: -5px; width: 2px; background: #082238; }
.plr-vis-score b { font: 800 16px/1 var(--f-display); color: var(--c); } .plr-vis-score em { margin-left: auto; font-style: normal; font-size: 11.5px; color: #64748B; }
.plr-vis-portal span { flex: 1; padding: 7px 10px; border-radius: 8px; background: #fff; border: 1px solid #E2E8F0; font-weight: 500; font-size: 12px; color: #475569; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.plr-vis-portal span b { color: var(--c); }
.plr-vis-portal i { font-style: normal; padding: 5px 9px; border-radius: 99px; background: var(--c); color: #fff; font-size: 11px; }
.plr-vis-must { flex-wrap: wrap; }
.plr-vis-must span { padding: 6px 10px; border-radius: 8px; background: #fff; border: 1px solid #D4EEDD; font-weight: 500; color: #334155; }
.plr-vis-must b { padding: 6px 10px; border-radius: 99px; background: var(--c); color: #fff; font-size: 11.5px; }
.plr-edges__ai { margin: 22px 0 0; padding: 16px 20px; border-radius: 16px; background: var(--lr-bg); border: 1px solid #DCD5FA; font-size: 15.5px; line-height: 1.6; color: #334155; max-width: 92ch; }
.plr-edges__ai b { color: #082238; } .plr-edges__ai a { color: #4733B8; font-weight: 600; }
@media (max-width: 1080px) { .plr-shelf { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .plr-shelf { grid-template-columns: 1fr; } .plr-edge--wide { grid-column: auto; } }

/* ---------- scroll-story J6: an onboarding course gets built ---------- */
.plr-cb { padding: 0; background: linear-gradient(180deg, #F4F1FF 0%, #EEF7FB 100%); overflow-x: clip; }
.plr-cb__stage { padding-top: clamp(64px, 8vw, 104px); padding-bottom: clamp(64px, 8vw, 104px); }
.plr-cb__head .pg-answer { margin-bottom: 0; }
.plr-cb__days { display: none; }
.plr-cb__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 56px); align-items: start; margin-top: 32px; }
.plr-cb__art { position: relative; }
.plr-cb__ill { display: block; width: 100%; height: auto; }
.plr-cb__bar { display: none; }
.plr-cb__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.plr-cb__st { background: #fff; border-radius: 22px; padding: 22px 24px; box-shadow: 0 30px 60px -44px rgba(8,34,56,.45); border-top: 5px solid var(--c); }
.plr-cb__when { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 8px; font: 800 12.5px/1.3 var(--f-body); letter-spacing: .08em; text-transform: uppercase; color: var(--c); }
.plr-cb__n { padding: 4px 9px; border-radius: 99px; background: var(--c); color: #fff; letter-spacing: .06em; }
.plr-cb__st h3 { margin: 0 0 8px; font: 700 clamp(21px, 1rem + .8vw, 26px)/1.22 var(--f-display); letter-spacing: -.02em; color: #082238; }
.plr-cb__st > p:not([class]) { margin: 0; font-size: 16.5px; line-height: 1.6; color: #334155; }
.plr-cb__note { margin: 26px 0 0; font-size: 14px; color: #64748B; max-width: 80ch; }

.plr-cb--live .plr-cb__track { height: calc(100vh + 6 * 52vh); }
.plr-cb--live .plr-cb__stage { position: sticky; top: 0; height: 100vh; min-height: 640px; display: flex; flex-direction: column; justify-content: center; padding-top: 92px; padding-bottom: 28px; }
.plr-cb--live .pg-h2 { font-size: clamp(26px, 1rem + 1.2vw, 36px); margin-bottom: 8px; max-width: none; }
.plr-cb--live .pg-answer { font-size: 16px; max-width: 78ch; }
.plr-cb--live .plr-cb__days { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 14px 0 0; padding: 0; }
.plr-cb__days button { font: 600 13px/1 var(--f-body); color: #082238; background: #fff; border: 1px solid #E2E8F0; padding: 9px 13px; border-radius: 99px; cursor: pointer; transition: background .3s, color .3s, border-color .3s; }
.plr-cb__days button.is-past { border-color: var(--lr); color: var(--lr); }
.plr-cb__days button[aria-current="true"] { background: var(--lr); color: #fff; border-color: var(--lr); }
.plr-cb__days button:focus-visible { outline: 2px solid #FFB81C; outline-offset: 2px; }
.plr-cb--live .plr-cb__grid { margin-top: 18px; align-items: center; }
.plr-cb--live .plr-cb__ill { max-height: min(44vh, 400px); margin: 0 auto; }
.plr-cb--live .plr-cb__pc { opacity: 0; transform: translateY(-22px); transform-box: fill-box; transition: opacity .55s, transform .7s cubic-bezier(.2,.9,.3,1.3); }
.plr-cb--live .plr-cb__pc.is-in { opacity: 1; transform: none; }
.plr-cb--live .plr-cb__bar { display: flex; justify-content: center; gap: 6px; margin-top: 14px; }
.plr-cb__bar i { width: 28px; height: 5px; border-radius: 4px; background: rgba(8,34,56,.14); transition: background .4s; } .plr-cb__bar i.on { background: var(--lr); }
.plr-cb--live .plr-cb__list { display: block; position: relative; min-height: 300px; }
.plr-cb--live .plr-cb__st { position: absolute; left: 0; right: 0; top: 50%; opacity: 0; pointer-events: none; transform: translateY(-44%) scale(.97); transition: opacity .2s, transform .3s; }
.plr-cb--live .plr-cb__st.is-on { opacity: 1; pointer-events: auto; transform: translateY(-50%); transition: opacity .45s .12s, transform .6s .12s cubic-bezier(.2,.8,.2,1); }
.plr-cb--live .plr-cb__note { margin-top: 14px; font-size: 13px; }
@media (max-width: 900px) { .plr-cb__grid { grid-template-columns: 1fr; } .plr-cb__art { max-width: 520px; } }
@media (max-height: 780px) {
  .plr-cb--live .plr-cb__stage { padding-top: 84px; padding-bottom: 14px; }
  .plr-cb--live .hp-kick { display: none; }
  .plr-cb--live .pg-answer { font-size: 15px; line-height: 1.5; }
  .plr-cb--live .plr-cb__days { margin-top: 10px; }
  .plr-cb--live .plr-cb__grid { margin-top: 10px; }
  .plr-cb--live .plr-cb__ill { max-height: 38vh; }
  .plr-cb--live .plr-cb__st { padding: 18px 20px; }
  .plr-cb--live .plr-cb__st > p:not([class]) { font-size: 15.5px; }
  .plr-cb--live .plr-cb__note { margin-top: 8px; }
}

/* ---------- signature interactive: drag lessons into a path ---------- */
.plr-b { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) minmax(0, .85fr); gap: 18px; margin-top: 34px; align-items: start; }
.plr-b__col, .plr-b__out { padding: 18px; border-radius: 20px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); }
.plr-b__h { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 12px; font: 700 15px/1.3 var(--f-display); color: #fff; }
.plr-b__h em { font: 600 11.5px/1 var(--f-body); font-style: normal; color: #A8C3D8; padding: 4px 8px; border-radius: 99px; background: rgba(255,255,255,.08); }
.plr-b__lib, .plr-b__path { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.plr-b__lib { grid-template-columns: 1fr 1fr; }
.plr-b__lib li, .plr-b__item { height: 100%; }
.plr-b__item { display: grid; gap: 3px; width: 100%; text-align: left; padding: 10px 12px 10px 14px; border-radius: 12px; border: 1px solid rgba(255,255,255,.16); border-left: 4px solid var(--c); background: rgba(255,255,255,.08); color: #fff; cursor: grab; font: inherit; transition: background .2s, transform .2s, opacity .3s; }
.plr-b__item:hover { background: rgba(255,255,255,.14); transform: translateX(3px); }
.plr-b__item:focus-visible { outline: 2px solid #FFB81C; outline-offset: 2px; }
.plr-b__item b { font: 600 14.5px/1.3 var(--f-body); }
.plr-b__k { font: 700 10.5px/1.2 var(--f-body); letter-spacing: .08em; text-transform: uppercase; color: var(--c); }
.plr-b__item[aria-disabled="true"] { opacity: .35; cursor: default; transform: none; }
.plr-b__path { min-height: 260px; padding: 10px; border-radius: 14px; border: 2px dashed rgba(255,255,255,.22); counter-reset: plrb; transition: border-color .2s, background .2s; }
.plr-b__path.is-over { border-color: #FFB81C; background: rgba(255,184,28,.06); }
.plr-b__empty { display: grid; place-items: center; min-height: 230px; font: 500 14px/1.4 var(--f-body); color: #A8C3D8; }
.plr-b__step { display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 8px 8px 8px 10px; border-radius: 12px; background: #fff; border-left: 4px solid var(--c); color: #082238; cursor: grab; animation: plrIn .35s cubic-bezier(.2,.8,.2,1); }
.plr-b__step.is-drag { opacity: .4; }
.plr-b__step::before { counter-increment: plrb; content: counter(plrb); display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #082238; color: #fff; font: 700 12px/1 var(--f-body); }
.plr-b__step span { display: grid; gap: 1px; min-width: 0; }
.plr-b__step b { font: 600 14px/1.3 var(--f-body); }
.plr-b__step small { font: 600 11px/1.2 var(--f-body); letter-spacing: .05em; text-transform: uppercase; color: #64748B; }
.plr-b__step .plr-b__ctl { display: flex; gap: 4px; }
.plr-b__ctl button { width: 30px; height: 30px; border-radius: 8px; border: 1px solid #E2E8F0; background: #F3F7F9; color: #082238; font: 700 14px/1 var(--f-body); cursor: pointer; }
.plr-b__ctl button:hover { background: #E2E8F0; } .plr-b__ctl button:focus-visible { outline: 2px solid #0A6FA8; outline-offset: 1px; }
.plr-b__ctl button:disabled { opacity: .35; cursor: default; }
@keyframes plrIn { from { opacity: 0; transform: translateY(-8px) scale(.97); } to { opacity: 1; transform: none; } }
.plr-b__btns { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 12px; }
.plr-b__ghost { padding: 11px 16px; font-size: 14px; }
.plr-b__reset { background: none; border: 0; color: #CFE2EE; font: 600 14px/1 var(--f-body); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; padding: 8px 4px; }
.plr-b__out { background: #fff; border-color: #fff; color: #082238; }
.plr-b__lbl { margin: 0; font: 700 11.5px/1 var(--f-body); letter-spacing: .1em; text-transform: uppercase; color: #64748B; }
.plr-b__plan { margin: 8px 0 6px; font: 800 24px/1.2 var(--f-display); letter-spacing: -.02em; color: var(--lr, #5B45D6); }
.plr-b__why { margin: 0 0 12px; font-size: 14.5px; line-height: 1.55; color: #334155; }
.plr-b__checks { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 8px; }
.plr-b__checks li { position: relative; padding: 8px 10px 8px 32px; border-radius: 10px; background: #F3F7F9; font-size: 13.5px; line-height: 1.45; color: #334155; }
.plr-b__checks li::before { content: ""; position: absolute; left: 11px; top: 12px; width: 11px; height: 6px; border-left: 2.5px solid #15803D; border-bottom: 2.5px solid #15803D; transform: rotate(-45deg); }
.plr-b__checks li.warn { background: #FFF6E5; color: #7A4B00; }
.plr-b__checks li.warn::before { width: 4px; height: 12px; left: 14px; top: 10px; border: 0; background: #E8900C; border-radius: 2px; transform: none; }
.plr-b__out .btn { width: 100%; justify-content: center; }
@media (max-width: 1080px) { .plr-b { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .plr-b__out { grid-column: 1 / -1; } }
@media (max-width: 680px) { .plr-b { grid-template-columns: 1fr; } .plr-b__item { padding: 9px 10px 9px 12px; } .plr-b__item b { font-size: 13.5px; } .plr-b__path { min-height: 140px; } .plr-b__empty { min-height: 110px; } }

/* ---------- pricing tweaks ---------- */
.plr-price .crm-vs__table th[scope="row"] { white-space: nowrap; }
.plr-price .pg-note a { color: #0A6FA8; font-weight: 600; }

/* ---------- compare ---------- */
.plr-vs .mk-wipe { margin-top: 30px; }
.plr-vs__fair { margin-top: 22px; max-width: 92ch; }

/* ---------- migration map ---------- */
.plr-mig__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 64px); align-items: center; }
.plr-mig__map { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.plr-mig__map li { display: grid; grid-template-columns: minmax(0, 1fr) 46px minmax(0, 1fr); align-items: center; gap: 10px; padding: 12px 14px; border-radius: 14px; background: #fff; border: 1px solid #E2E8F0; box-shadow: 0 20px 34px -32px rgba(8,34,56,.5); }
.plr-mig__map span { font: 500 14.5px/1.4 var(--f-body); color: #475569; }
.plr-mig__map b { font: 650 14.5px/1.4 var(--f-body); color: #082238; padding-left: 10px; border-left: 3px solid var(--lr); }
.plr-mig__map i { position: relative; height: 2px; background: linear-gradient(90deg, #CBD5E1, var(--lr)); }
.plr-mig__map i::after { content: ""; position: absolute; right: -1px; top: -4px; border-left: 7px solid var(--lr); border-top: 5px solid transparent; border-bottom: 5px solid transparent; }
@media (max-width: 900px) { .plr-mig__grid { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .plr-mig__map li { grid-template-columns: 1fr; gap: 6px; } .plr-mig__map i { display: none; } }

/* ---------- small screens ---------- */
@media (max-width: 900px) {
  .plr-hero .plr-hero__grid { grid-template-columns: 1fr; }
  .plr-hp { padding-right: 0; max-width: 560px; }
  .plr-hp__badge { right: 8px; top: auto; bottom: 64px; }
}
@media (max-width: 480px) {
  .plr-hn { grid-template-columns: 26px minmax(0, 1fr); padding-right: 10px; }
  .plr-hn__s { display: none; }
  .plr-hp__cert { left: 10px; right: 10px; font-size: 12px; }
  .plr-hp__tag { display: none; }
  .plr-hp__badge { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .plr-hp__run, .plr-hp__bar i, .plr-hn, .plr-hp__badge, .plr-hp__cert, .plr-b__item, .plr-b__step { transition: none !important; animation: none !important; }
}
