/* Phone plan picker (plan-picker.js). Phones only; desktop and no-script keep the full cards. */
.mp,.mp-cmpbtn{display:none}
/* the "Every Step" kicker over the full plans (homepage cards; the membership page has its own copy) */
.plan .os-aa{margin:0 0 -6px;font:800 11.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#4b5a75}
@media(max-width:640px){
html.mp-on .mp{display:block;background:#fff;border:1.5px solid #c6d3ea;border-radius:16px;padding:10px;margin:12px 0 0;color:#15233c;box-shadow:0 2px 0 #c6d3ea}
html.mp-on #plans .plans,html.mp-on .priceband .pricing-grid,html.mp-on .hm-os{display:none}
html.mp-on #plans h1{font-size:30px}
html.mp-on #plans .lead{font-size:16.5px;margin:6px 0 0}
html.mp-on #plans .mem-plans-h{display:none}
html.mp-on #plans .fm-slot{margin:8px 0 0}
.mp-rows{display:grid;gap:6px}
.mp-row{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:10px;align-items:center;min-height:56px;padding:8px 12px;border:1.5px solid #c6d3ea;border-radius:12px;background:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;color:#15233c}
.mp-row[aria-checked="true"]{border:2.5px solid #15233c;background:#fff8d6;padding:7px 11px}
.mp-row.mp-os[aria-checked="false"]{border-style:dashed;border-color:#8fa3c4}
.mp-row:focus-visible{outline:3px solid #1d3fb5;outline-offset:2px}
.mp-dot{width:20px;height:20px;border-radius:50%;border:2px solid #15233c;display:grid;place-items:center;background:#fff}
.mp-row[aria-checked="true"] .mp-dot::after{content:"";width:10px;height:10px;border-radius:50%;background:#15233c}
.mp-nm{display:flex;flex-wrap:wrap;align-items:center;gap:2px 8px;min-width:0}
.mp-nm b{font:800 16.5px/1.2 var(--display)}
.mp-fam{flex-basis:100%;font:800 10.5px/1.1 var(--mono);font-style:normal;letter-spacing:.06em;text-transform:uppercase;color:#4b5a75;margin-bottom:-1px}
.mp-nm small{flex-basis:100%;font-size:13px;line-height:1.3;color:#38455f}
.mp-bd{font:800 10.5px/1 var(--mono);font-style:normal;letter-spacing:.04em;text-transform:uppercase;background:#ffd23f;color:#15233c;border-radius:999px;padding:3px 7px;white-space:nowrap}
.mp-pr{text-align:right;display:grid;justify-items:end}
.mp-pr b{font:800 19px/1.1 var(--display);font-variant-numeric:tabular-nums;color:#15233c}
.mp-pr small{font-size:12px;color:#38455f;white-space:nowrap}
.mp-det{padding:10px 4px 2px}
.mp-li{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:5px}
.mp-li li{position:relative;padding-left:26px;font-size:14.5px;line-height:1.35;color:#15233c}
.mp-li li::before{content:"✓";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:#dff5e8;color:#127a4b;font:800 11px/18px system-ui,sans-serif;text-align:center}
.mp-gr{display:grid;gap:4px;font-weight:800;font-size:14.5px;margin:0 0 10px}
.mp-gr select{min-height:44px;border:1.5px solid #8fa3c4;border-radius:10px;padding:6px 10px;font:600 16px var(--body);background:#fff;color:#15233c}
.mp-gr small{font-weight:400;font-size:12.5px;color:#38455f}
.mp .btn.mp-go{display:flex;width:100%;justify-content:center;align-items:center;min-height:50px;margin:0;background:#ffd23f;color:#15233c;border:2px solid #15233c;box-shadow:0 4px 0 #15233c;font:800 16.5px/1.2 var(--display);text-decoration:none}
.mp .btn.mp-go.mp-soon{background:#fff}
.mp .btn.mp-go.mp-soon::before{content:"⏳";margin-right:6px}
.mp-err{margin:8px 0 0;font-size:14px;font-weight:700;color:var(--warn)}
.mp-err:empty{display:none}
.mp-extra{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px;margin:10px 0 0;padding:8px 12px;border-radius:12px;background:#eef3fb;color:#15233c!important;font-weight:800;font-size:14.5px;text-decoration:none}
/* the compare table: behind a button; open, it swipes sideways and the first column stays */
html.mp-on .mp-cmpbtn{display:flex;width:100%;justify-content:space-between;align-items:center;min-height:50px;margin:24px 0 0;padding:10px 16px;border-radius:12px;border:2px solid #15233c;background:#fff;color:#15233c;font:800 17px/1.2 var(--display);cursor:pointer}
html.mp-on .mp-cmpbtn[aria-expanded="true"] .mp-chev{transform:rotate(180deg)}
html.mp-on:not(.mp-cmp-open) #compare{display:none}
html.mp-on #compare{margin-top:12px}
html.mp-on #compare>h2{display:none}
html.mp-on #compare .pk-tw{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1.5px solid #c6d3ea;border-radius:12px}
html.mp-on body #compare table.stack.pk-cmp{display:table!important;min-width:640px!important;table-layout:fixed;border-collapse:separate;border-spacing:0}
html.mp-on body #compare table.stack.pk-cmp thead{position:static;width:auto;height:auto;overflow:visible;clip:auto;display:table-header-group}
html.mp-on body #compare table.stack.pk-cmp tbody{display:table-row-group}
html.mp-on body #compare table.stack.pk-cmp tr,html.mp-on body #compare table.stack.pk-cmp tbody tr.pk-same{display:table-row!important;margin:0;border:0;box-shadow:none;border-radius:0}
html.mp-on body #compare table.stack.pk-cmp :is(td,th),html.mp-on body #compare table.stack.pk-cmp tbody tr.pk-same td{display:table-cell!important;padding:8px 6px!important;font-size:13px;border-bottom:1px solid #eef1f6!important}
html.mp-on body #compare table.stack.pk-cmp [data-label]::before{content:none}
html.mp-on body #compare table.stack.pk-cmp tbody td{text-align:center!important;vertical-align:middle}
html.mp-on body #compare table.stack.pk-cmp .pk-sum{display:none!important}
html.mp-on body #compare table.stack.pk-cmp thead th:first-child,html.mp-on body #compare table.stack.pk-cmp tbody tr>th{position:sticky;left:0;z-index:2;width:140px}
html.mp-on body #compare table.stack.pk-cmp tbody tr>th{background:#fff!important;color:#15233c!important;font-size:13px;box-shadow:2px 0 0 #c6d3ea}
html.mp-on body #compare table.stack.pk-cmp tbody tr>th a{color:#15233c!important}
html.mp-on body #compare table.stack.pk-cmp tbody tr>th small{color:#38455f!important;font-size:12px}
html.mp-on body #compare table.stack.pk-cmp thead th{padding:8px 6px!important}
html.mp-on body #compare table.stack.pk-cmp .pk-pp{font-size:13.5px}
}
