
/* CIMA case studies page: CK gateway/navigator design. Level colours = CIMA pathway columns (a2/a3/a4). */
.cs{--navy:#1B2766;--blue:#283888;--red:#D61F1F;--ink:#232A4D;--mut:#4F5679;--line:#DDE2F2;--soft:#F4F6FC;--teal:#0F766E;--ok:#047857;--warn:#3A4478;--warnbg:#E8ECF8;
 --o:#0F766E;--o2:#0D9488;--obg:#E4F7F4;--m:#115E59;--m2:#0F766E;--mbg:#D3EDE8;--s:#0B3A42;--s2:#115E59;--sbg:#C2E0DE}
.cs [data-cs="ocs"]{--lv:var(--o);--lv2:var(--o2);--lvbg:var(--obg)}
.cs [data-cs="mcs"]{--lv:var(--m);--lv2:var(--m2);--lvbg:var(--mbg)}
.cs [data-cs="scs"]{--lv:var(--s);--lv2:var(--s2);--lvbg:var(--sbg)}
.cs h1,.cs h2,.cs h3,.cs h4{font-family:'Cabin',sans-serif;color:var(--navy)}
.cs svg.i{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;flex:none}
.cs a:focus-visible,.cs button:focus-visible,.cs summary:focus-visible,.cs input:focus-visible{outline:3px solid #283888;outline-offset:2px;box-shadow:0 0 0 2px #fff;border-radius:8px}

/* chips */
.cs [hidden]{display:none!important}
.cs .chip{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;border-radius:999px;padding:4px 10px;line-height:1.2;white-space:nowrap}
.cs .chip.ok{background:#ECFDF5;color:#065F46}.cs .chip.ok::before{content:"";width:7px;height:7px;border-radius:50%;background:#10B981}
.cs .chip.tbc{background:var(--warnbg);color:var(--warn);border:1px dashed #7B86BD}.cs .chip.tbc::before{content:"?";font-weight:900}
.cs .chip.soon{background:#E0E7FF;color:var(--navy)}
.cs .chip.ed{background:#E0F2FE;color:#075985}
.cs .src{font-size:13px;color:var(--mut);margin:14px 0 0;line-height:1.5}.cs .src b{color:var(--navy)}

/* HERO */
.cs-hero .wrap{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:28px;align-items:center;padding-top:34px;padding-bottom:40px}
.cs-hero h1{font-size:clamp(32px,4.2vw,50px);line-height:1.08;margin:14px 0 10px;color:#fff;max-width:15em}
.cs-hero p.lead{font-size:18px;line-height:1.5;color:#E8FBF8;max-width:34em;margin:0}
.cs-picks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0 18px;max-width:640px}
.cs-pick{display:flex;flex-direction:column;gap:2px;text-decoration:none;background:#fff;color:var(--navy);border-radius:16px;padding:12px 14px 12px;border-bottom:5px solid var(--lv);box-shadow:0 10px 24px rgba(6,40,44,.28);transition:transform .16s,box-shadow .16s;position:relative;min-height:88px}
.cs-pick:hover{transform:translateY(-3px);box-shadow:0 16px 30px rgba(6,40,44,.34)}
.cs-pick .code{font-family:'Cabin',sans-serif;font-weight:700;font-size:28px;line-height:1;color:var(--lv)}
.cs-pick .nm{font-weight:700;font-size:15px}
.cs-pick .sb{font-size:12.5px;color:var(--mut)}
.cs-pick svg.stair{position:absolute;right:12px;top:12px;width:30px;height:24px}
.cs-hero .acts{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.cs-hero .trust{font-size:14px;color:#BEEDE7;margin:14px 0 0}
.cs-art{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 30px rgba(3,30,34,.35))}

/* layout */
.cs-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding-top:36px;padding-bottom:56px}
@media (min-width:1040px){.cs-layout{grid-template-columns:minmax(0,1fr) 352px;gap:36px}}
.cs-main>section{margin:0 0 44px}
.cs-main h2{font-size:clamp(24px,2.6vw,30px);line-height:1.15;margin:0 0 6px}
.cs-main .sec-lead{margin:0 0 18px;color:var(--mut);font-size:16px;line-height:1.5;max-width:46em}
.cs section[id],.cs article[id],.cs aside[id]{scroll-margin-top:92px}

/* ROADMAP */
.cs-road{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.cs-leg{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:12px;background:#fff;border:1.5px solid var(--line);border-radius:18px;padding:16px;transition:transform .16s,border-color .16s,box-shadow .16s}
.cs-leg:hover{transform:translateY(-3px);border-color:var(--lv);box-shadow:0 12px 26px rgba(27,39,102,.12)}
.cs-leg .lvl{font-family:'Cabin',sans-serif;font-weight:700;font-size:17px;color:var(--navy)}
.cs-leg .ots{display:flex;gap:6px;align-items:center}
.cs-leg .ot{flex:1;text-align:center;background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:8px 0;font-weight:800;font-size:14px;color:var(--navy)}
.cs-leg .join{height:22px;margin:0 0 -4px 0}
.cs-leg .join svg{width:100%;height:22px;display:block}
.cs-leg .end{display:flex;align-items:center;gap:10px;background:linear-gradient(115deg,var(--lv),var(--lv2));color:#fff;border-radius:14px;padding:10px 12px}
.cs-leg .end b{font-family:'Cabin',sans-serif;font-size:22px;line-height:1}
.cs-leg .end span{font-size:13.5px;line-height:1.25;opacity:.95}
.cs-leg .end svg{margin-left:auto;width:30px;height:24px}
.cs-road-note{display:flex;gap:10px;align-items:flex-start;margin:14px 0 0;font-size:14.5px;color:var(--ink);background:var(--soft);border-radius:14px;padding:12px 14px;line-height:1.5}
.cs-road-note svg{color:var(--teal);margin-top:1px}

/* NAVIGATOR */
.cs-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 14px}
.cs-tile{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-radius:16px;background:var(--lvbg);color:var(--navy);border:2px solid transparent;transition:transform .16s,box-shadow .16s;min-height:78px}
.cs-tile:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(11,58,66,.18)}
.cs-tile[aria-pressed="true"]{background:linear-gradient(115deg,var(--lv),var(--lv2));color:#fff;box-shadow:0 12px 26px rgba(11,58,66,.3);transform:translateY(-3px)}
.cs-tile .t1{font-family:'Cabin',sans-serif;font-weight:700;font-size:26px;line-height:1}
.cs-tile .t2{font-weight:700;font-size:14.5px}
.cs-tile .t3{font-size:12.5px;opacity:.85}
.cs-card{background:#fff;border:1.5px solid var(--line);border-radius:22px;box-shadow:0 14px 34px rgba(27,39,102,.10);overflow:hidden}
.csc .hd{display:flex;gap:14px;align-items:center;padding:18px 22px;background:linear-gradient(115deg,var(--lv),var(--lv2));color:#fff}
.csc .hd .bd{font-family:'Cabin',sans-serif;font-weight:700;font-size:30px;line-height:1;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.4);border-radius:14px;padding:10px 14px}
.csc .hd h3{margin:0;color:#fff;font-size:21px;line-height:1.15}
.csc .hd small{display:block;color:#DDF7F3;font-size:14px;margin-top:3px}
.csc .hd .chip{margin-left:auto;background:#fff;color:var(--navy)}
.csc .cstabs{display:flex;flex-wrap:wrap;gap:8px;padding:14px 16px 0;overflow-x:auto;scrollbar-width:thin}
.csc .cstab{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:0 12px;min-height:44px;border:2px solid var(--line);border-radius:12px;font-weight:700;font-size:14.5px;color:var(--navy);background:#fff;white-space:nowrap;transition:transform .15s,background .15s,border-color .15s}
.csc .cstab:hover{border-color:var(--lv);transform:translateY(-2px)}
.csc .cstab[aria-selected="true"]{background:var(--lv);border-color:var(--lv);color:#fff;box-shadow:0 8px 18px rgba(11,58,66,.25)}
.csc .cstab svg.i{width:18px;height:18px}
.csc .tp{padding:20px 22px 22px;min-height:340px}
.csc .tp[hidden]{display:none}
.csc .tp.on{animation:cs-in .22s ease-out}
@keyframes cs-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.csc .tp h4{font-size:18px;margin:0 0 10px}
.csc .tp h4 .chip{margin-left:8px;vertical-align:middle}
.csc .row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.csc .box{border:1.5px solid var(--line);border-radius:16px;padding:14px 16px;background:#fff}
.csc .box.pale{background:var(--lvbg);border-color:transparent}
.csc .box.ghost{border-style:dashed;background:#FBFCFF}

/* overview facts */
.csc .facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.csc .fact{border-radius:16px;background:var(--lvbg);padding:14px;display:flex;flex-direction:column;gap:6px;min-height:128px}
.csc .fact svg.i{color:var(--lv);width:26px;height:26px}
.csc .fact small{font-size:13px;color:var(--mut);font-weight:600}
.csc .fact b{font-size:15.5px;line-height:1.3;color:var(--navy)}
.csc .fact .chip{align-self:flex-start;margin-top:auto}
.csc .oneline{font-size:16.5px;line-height:1.55;margin:16px 0 0;color:var(--ink);max-width:46em}

/* exam timeline */
.cs-tl{margin:6px 0 4px}
.cs-tl .lab{display:flex;justify-content:space-between;font-size:13px;color:var(--mut);margin-bottom:6px}
.cs-tl .bar{display:flex;gap:4px;height:46px}
.cs-tl .seg{flex:1;border-radius:10px;background:var(--blue);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:700;font-size:13.5px;line-height:1.1;position:relative;transform-origin:left;animation:cs-grow .5s ease-out both}
.cs-tl .seg:nth-child(even){background:#3B4FB4}
.cs-tl .seg small{font-weight:600;opacity:.9;font-size:12px}
.cs-tl .seg::before{content:"";position:absolute;left:8px;top:-9px;width:9px;height:9px;border-radius:50%;background:var(--red);border:2px solid #fff}
.cs-tl .pre{margin-top:8px;height:14px;border-radius:7px;background:repeating-linear-gradient(90deg,#99E0D6 0 8px,#C9F0EA 8px 16px);position:relative}
.cs-tl .pre-l{font-size:13px;color:var(--ink);margin-top:5px;display:flex;gap:6px;align-items:center}
.cs-tl .tut{display:inline-block;background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:3px 8px;font-size:12.5px;color:var(--navy);font-weight:700}
.cs-tl .lg{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--ink);margin-top:10px}
.cs-tl .lg i{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--red);margin-right:6px;vertical-align:-1px}
.cs-tl .lg i.b{border-radius:3px;background:var(--blue)}.cs-tl .lg i.t{border-radius:3px;background:#99E0D6}
.cs-tl.ghost .bar .seg{background:repeating-linear-gradient(135deg,#E8ECF8 0 8px,#F5F7FD 8px 16px);color:var(--warn);border:1.5px dashed #7B86BD;animation:none}
.cs-tl.ghost .seg::before{display:none}
@keyframes cs-grow{from{transform:scaleX(0)}to{transform:none}}
/* marks scale */
.cs-mk .bar{position:relative;height:18px;border-radius:9px;background:linear-gradient(90deg,#E6E9F7 0 53.33%,#BFE9E2 53.33% 100%);margin:34px 0 26px}
.cs-mk .pass{position:absolute;left:53.33%;top:-12px;bottom:-12px;width:3px;background:var(--red);border-radius:2px}
.cs-mk .pass b{position:absolute;top:-24px;left:50%;transform:translateX(-50%);font-size:12.5px;color:var(--red);white-space:nowrap;font-weight:800}
.cs-mk .ends{display:flex;justify-content:space-between;font-size:13px;color:var(--mut);font-weight:700}
.cs-mk .bar span{position:absolute;bottom:-22px;font-size:12px;color:var(--mut)}
.cs-mk.ghost .bar{background:repeating-linear-gradient(135deg,#E8ECF8 0 8px,#F5F7FD 8px 16px);border:1.5px dashed #7B86BD}
.cs-mk.ghost .pass{display:none}
/* calendar strip */
.cs-cal{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;margin:6px 0 10px}
.cs-cal i{font-style:normal;text-align:center;font-size:12px;font-weight:700;border-radius:8px;padding:8px 0;background:var(--soft);color:#8089AE}
.cs-cal i.w{background:var(--blue);color:#fff;box-shadow:0 4px 10px rgba(40,56,136,.3)}
.cs-pts{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0;list-style:none}
.cs-pts li{display:flex;gap:8px;align-items:center;background:var(--soft);border-radius:12px;padding:8px 12px;font-size:14px;color:var(--ink);line-height:1.35}
.cs-pts svg.i{width:18px;height:18px;color:var(--lv)}
.cs-mini{margin:8px 0 0;padding:0;list-style:none;font-size:14.5px;color:var(--ink);line-height:1.5}
.cs-mini li{display:flex;gap:8px;align-items:flex-start;margin:4px 0}.cs-mini svg.i{width:18px;height:18px;margin-top:2px;color:var(--lv)}

/* assessed */
.csc .acts6{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.csc .act{border:1.5px solid var(--line);border-radius:16px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:6px;transition:transform .16s,border-color .16s}
.csc .act:hover{transform:translateY(-3px);border-color:var(--lv)}
.csc .act .ic{width:42px;height:42px;border-radius:12px;background:var(--lvbg);color:var(--lv);display:flex;align-items:center;justify-content:center}
.csc .act b{font-size:15px;color:var(--navy);line-height:1.25}
.csc .act .rg{display:flex;justify-content:space-between;font-size:12.5px;color:var(--mut);font-weight:700}
.csc .act .rg em{font-style:normal;color:var(--navy)}
.csc .rb{position:relative;height:10px;border-radius:5px;background:#E6E9F7}
.csc .rb i{position:absolute;top:0;bottom:0;border-radius:5px;background:linear-gradient(90deg,var(--lv),var(--lv2));transform-origin:left;animation:cs-grow .6s ease-out both}
.csc .axis{display:flex;justify-content:space-between;font-size:12px;color:#7F88AD;margin-top:12px;max-width:100%}
.csc .act.ghost{border-style:dashed;background:#FBFCFF}
.csc .act.ghost .ic{background:var(--warnbg);color:var(--warn)}
.csc .act.ghost .rb{background:repeating-linear-gradient(135deg,#E8ECF8 0 6px,#F5F7FD 6px 12px)}

/* plan */
.csc .plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.csc .pl{border:1.5px solid var(--line);border-radius:16px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:6px;position:relative;transition:transform .16s,border-color .16s}
.csc .pl:hover{transform:translateY(-3px);border-color:var(--lv)}
.csc .pl .ic{width:40px;height:40px;border-radius:12px;background:var(--lvbg);color:var(--lv);display:flex;align-items:center;justify-content:center}
.csc .pl b{font-size:15px;color:var(--navy)}.csc .pl span{font-size:14px;color:var(--ink);line-height:1.45}
.csc .pl .chip{align-self:flex-start;margin-top:auto}
.csc .planbar{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;margin:0 0 14px;font-size:14.5px}
.csc .acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.csc .fq,.cs-faq .fq{background:#fff;border:1.5px solid var(--line);border-radius:14px;padding:0 16px;margin:8px 0;transition:border-color .15s}
.csc .fq[open],.cs-faq .fq[open]{border-color:var(--lv,var(--blue));background:#FBFCFF}
.csc .fq summary,.cs-faq .fq summary{cursor:pointer;font-weight:700;color:var(--navy);padding:14px 0;min-height:44px;list-style:none;display:flex;gap:10px;align-items:center;justify-content:space-between}
.csc .fq summary::-webkit-details-marker,.cs-faq .fq summary::-webkit-details-marker{display:none}
.csc .fq summary::after,.cs-faq .fq summary::after{content:"+";font-size:22px;font-weight:700;color:var(--blue);flex:none}
.csc .fq[open] summary::after,.cs-faq .fq[open] summary::after{content:"\2212"}
.csc .fq p,.cs-faq .fq p{margin:0 0 14px;line-height:1.6;color:var(--ink)}

/* compare */
.cs-cmp{table-layout:fixed;width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1.5px solid var(--line);border-radius:18px;overflow:hidden;font-size:14.5px}
.cs-cmp th,.cs-cmp td{padding:11px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.cs-cmp tbody tr:last-child th,.cs-cmp tbody tr:last-child td{border-bottom:0}
.cs-cmp thead th{color:#fff;font-family:'Cabin',sans-serif;font-size:17px;border-bottom:0}
.cs-cmp thead th:nth-child(2){background:var(--o)}.cs-cmp thead th:nth-child(3){background:var(--m)}.cs-cmp thead th:nth-child(4){background:var(--s)}
.cs-cmp thead th:first-child{background:var(--navy)}
.cs-cmp tbody th{background:var(--soft);color:var(--navy);width:19%;font-weight:700}
.cs-cmp td .chip{margin-top:4px}
.cs-cmpm{display:none;gap:12px}
.cs-cmpm .cc{border:1.5px solid var(--line);border-radius:16px;overflow:hidden;background:#fff}
.cs-cmpm .cc h3{margin:0;padding:10px 14px;color:#fff;font-size:17px;background:linear-gradient(115deg,var(--lv),var(--lv2))}
.cs-cmpm dl{margin:0;padding:6px 14px 10px}.cs-cmpm .r{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:14px;align-items:flex-start}
.cs-cmpm .r:last-child{border-bottom:0}.cs-cmpm dt{color:var(--mut);font-weight:700;flex:none}.cs-cmpm dd{margin:0;text-align:right;color:var(--ink)}
/* quiz */
.cs-rc{display:grid;grid-template-columns:200px minmax(0,1fr)}
.cs-rc .side{background:linear-gradient(160deg,var(--navy),#283888);color:#fff;padding:22px;display:flex;flex-direction:column;gap:10px;justify-content:center}
.cs-rc .side h2{color:#fff;font-size:22px;margin:0}.cs-rc .side p{margin:0;color:#DCE2FF;font-size:14.5px;line-height:1.45}
.cs-rc .side svg{width:54px;height:54px;color:#fff;stroke-width:1.5}
.cs-rc .rq{padding:22px}
.cs-rc .qn{font-size:13px;color:var(--mut);font-weight:700;display:flex;align-items:center;gap:10px}
.cs-rc .dots{display:flex;gap:5px}.cs-rc .dots i{width:22px;height:6px;border-radius:3px;background:#DDE2F2}.cs-rc .dots i.d{background:var(--blue)}
.cs-rc .qt{font-family:'Cabin',sans-serif;color:var(--navy);margin:8px 0 10px;font-size:18px;line-height:1.3}
.cs .rq .qo{display:block;width:100%;text-align:left;padding:12px 14px;border:1.5px solid #C5CCE6;border-radius:12px;background:#fff;margin:8px 0;font:inherit;cursor:pointer;color:var(--ink);min-height:46px;transition:border-color .15s,background .15s}
.cs .rq .qo:hover:not(:disabled){border-color:var(--blue);background:#F4F6FF}
.cs .rq .qo[data-s=ok]{border-color:#047857;background:#ECFDF5}.cs .rq .qo[data-s=no]{border-color:#B91C1C;background:#FEF2F2}
.cs .rq .qwhy{margin-top:10px;font-size:14.5px;color:var(--ink);line-height:1.5}
.cs .rq .qbig{font-family:'Cabin',sans-serif;font-size:34px;color:var(--navy);margin:4px 0}

/* SURVEY aside */
.cs-aside{position:relative}
@media (min-width:1040px){.cs-aside{position:sticky;top:88px;align-self:start}}
.cs-sv{padding:20px 20px 18px}
.cs-sv h2{font-size:22px;margin:0 0 4px}
.cs-sv .prog{display:flex;align-items:center;gap:10px;margin:10px 0 14px;font-size:13px;color:var(--mut);font-weight:700}
.cs-sv .pbar{flex:1;height:8px;border-radius:4px;background:#E6E9F7;overflow:hidden}.cs-sv .pbar i{display:block;height:100%;width:25%;background:linear-gradient(90deg,var(--blue),var(--red));border-radius:4px;transition:width .3s}
.cs-sv fieldset{border:0;margin:0;padding:0;min-width:0}
.cs-sv legend{font-weight:800;color:var(--navy);margin-bottom:8px;font-size:15.5px;padding:0}
.cs-sv label.o{display:flex;gap:10px;align-items:center;padding:9px 12px;border:1.5px solid var(--line);border-radius:12px;margin:6px 0;cursor:pointer;font-size:14.5px;min-height:42px;transition:border-color .15s,background .15s}
.cs-sv label.o:hover{border-color:var(--blue)}
.cs-sv label.o:has(input:checked){border-color:var(--blue);background:#EEF1FF}
.cs-sv input[type=radio]{accent-color:var(--blue);width:18px;height:18px}
.cs-sv input[type=text],.cs-sv input[type=email]{width:100%;min-height:46px;border:1.5px solid #C5CCE6;border-radius:12px;padding:0 14px;font:inherit;margin:4px 0 12px;box-sizing:border-box}
.cs-sv .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cs-sv .nav{display:flex;gap:10px;align-items:center;margin-top:12px}
.cs-sv .nav .btn{flex:1}
.cs-sv .back{all:unset;cursor:pointer;color:var(--blue);font-weight:700;font-size:14.5px;padding:10px 6px;min-height:24px}
.cs-sv .msg{margin-top:12px;padding:12px 14px;border-radius:12px;font-weight:600}.cs-sv .msg.ok{background:#ECFDF5;color:#065F46}.cs-sv .msg.err{background:#FEF2F2;color:#991B1B}
.cs-sv .note{font-size:13px;color:var(--mut);margin:12px 0 0;line-height:1.45}
.cs-sv .alt{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.cs-sv .alt a{display:flex;align-items:center;justify-content:center;gap:6px;text-align:center;text-decoration:none;font-weight:700;font-size:14px;color:var(--navy);border:1.5px solid #C5CCE6;border-radius:12px;min-height:46px;padding:6px 8px;transition:border-color .15s,transform .15s}
.cs-sv .alt a:hover{border-color:var(--blue);transform:translateY(-2px)}
.cs-sv .alt svg.i{width:18px;height:18px}
.cs.js .cs-sv .stp{display:none}.cs.js .cs-sv .stp.on{display:block;animation:cs-in .2s ease-out}
/* FAQ + legal */
.cs-faq{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;align-items:start}
.cs-legal{font-size:14px;color:var(--mut);border-left:4px solid var(--blue);background:var(--soft);padding:14px 16px;border-radius:0 12px 12px 0;margin-top:22px;line-height:1.55}
/* dock (phone) */
.cs-dock{display:none}
@media (max-width:1039px){.cs-dock{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;gap:10px;align-items:center;padding:8px 64px 8px 72px;background:#fff;border-top:1.5px solid var(--line);box-shadow:0 -8px 20px rgba(27,39,102,.12);transition:transform .2s}
 .cs-dock.off{transform:translateY(110%)}.cs-dock span{font-size:14px;font-weight:700;color:var(--navy);flex:1;line-height:1.25}.cs-dock .btn{flex:none}
 .cs{padding-bottom:62px}}

/* responsive */
@media (max-width:900px){
 .cs-hero .wrap{grid-template-columns:1fr}.cs-art-w{display:none}
 .csc .facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 .csc .acts6,.csc .plans{grid-template-columns:repeat(2,minmax(0,1fr))}
 .cs-faq{grid-template-columns:1fr}
}
@media (max-width:640px){
 .cs-road{grid-template-columns:1fr}
 .cs-leg{padding:12px;gap:8px}.cs-leg .join{display:none}.cs-leg .ot{padding:6px 0;font-size:13px}.cs-leg .end{padding:8px 10px}.cs-leg .end b{font-size:20px}
 .csc .fact{display:grid;grid-template-columns:34px 1fr;column-gap:12px;row-gap:2px;align-items:start;padding:12px}.csc .fact svg.i{grid-row:1 / span 3}.csc .fact .chip{margin-top:4px;justify-self:start}
 .cs-cmp{display:none}.cs-cmpm{display:grid}

 .cs-picks{grid-template-columns:1fr;gap:10px}
 .cs-pick{min-height:0;flex-direction:row;align-items:center;gap:12px;padding:10px 14px}.cs-pick .code{font-size:26px;min-width:64px}.cs-pick .sb{display:none}.cs-pick .nm{flex:1}.cs-pick svg.stair{position:static}
 .cs-tiles{gap:8px}.cs-tile{padding:10px;min-height:68px}.cs-tile .t1{font-size:22px}.cs-tile .t3{display:none}
 .csc .hd{padding:14px 16px;flex-wrap:wrap}.csc .hd .bd{font-size:24px;padding:8px 12px}.csc .hd .chip{margin-left:0}
 .csc .tp{padding:16px;min-height:0}.csc .cstabs{padding:12px 12px 0;flex-wrap:nowrap;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent);padding-right:36px}
 .csc .row2{grid-template-columns:1fr}
 .csc .facts,.csc .plans{grid-template-columns:1fr}.csc .acts6{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.csc .act{padding:12px}.csc .fact{min-height:0}
 .csc .pl{display:grid;grid-template-columns:40px 1fr;column-gap:12px;row-gap:2px;padding:12px}.csc .pl .ic{grid-row:1 / span 3}.csc .pl .chip{justify-self:start;margin-top:6px}
 .cs-tl .seg{font-size:12px}.cs-tl .seg small{display:none}
 .cs-rc{grid-template-columns:1fr}.cs-rc .side{padding:16px}.cs-rc .side svg{display:none}
 .cs-cmp thead{display:none}.cs-cmp,.cs-cmp tbody,.cs-cmp tr,.cs-cmp th,.cs-cmp td{display:block}
 .cs-cmp tr{border-bottom:8px solid var(--soft)}.cs-cmp tbody th{width:auto;background:var(--navy);color:#fff}
 .cs-cmp td{display:flex;gap:10px;justify-content:space-between;align-items:flex-start}.cs-cmp td::before{content:attr(data-l);font-weight:800;color:var(--lv);flex:none;min-width:48px}
 .cs-cmp td>span{text-align:right}
 .cs-sv .alt{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
 .cs *,.cs *::before,.cs *::after{animation:none!important;transition:none!important}
}
