/*
 * sa-korea.css — /study-abroad/south-korea page components
 * (hero live strip, sticky nav, closing-soon rail, window list, IELTS matcher, lead form,
 *  documents checklist, steps timeline). Uses the ik-marketing.css tokens only.
 * Light by default; a `.kr-dark` ancestor flips the local --k* tokens (used by the windows band).
 */

/* `.ik-page{overflow-x:hidden}` makes the shell a scroll container, which kills position:sticky.
   `clip` keeps the horizontal-overflow guard without creating one. */
#country-shell.ik-page{overflow-x:clip}

.kr-scope,.kr-dark{
  --kb:#fff;--kbd:var(--linelt);--kt:var(--dk);--kt2:var(--dk2);--kt3:var(--dk3);--ka:var(--maroon);--kas:var(--maroon-soft);--kpaper:var(--paper);
}
.kr-dark{
  --kb:#1c1c23;--kbd:#2c2c33;--kt:#F7F7F8;--kt2:#B7B7C0;--kt3:#85858F;--ka:var(--gold-hi);--kas:rgba(203,167,111,.12);--kpaper:#17171c;
}

/* ── hero ── */
.kr-flag{display:block;margin:0 auto 18px;width:76px;height:auto;filter:drop-shadow(0 6px 18px rgba(0,0,0,.45))}
.kr-live{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center;margin:0 auto 26px;padding:9px 16px;border:1px solid rgba(203,167,111,.35);background:rgba(203,167,111,.08);font-size:13.5px;color:var(--hi);line-height:1.5}
.kr-live:empty{display:none}
.kr-live strong{color:#fff;font-weight:700}
.kr-live a{color:var(--gold-hi)!important;text-decoration:underline;text-underline-offset:3px}
.kr-live-sep{opacity:.5}
.kr-live-dot{width:9px;height:9px;border-radius:50%;background:#3ddc84;box-shadow:0 0 0 0 rgba(61,220,132,.6);animation:krpulse 2s infinite}
@keyframes krpulse{70%{box-shadow:0 0 0 9px rgba(61,220,132,0)}100%{box-shadow:0 0 0 0 rgba(61,220,132,0)}}
@media(prefers-reduced-motion:reduce){.kr-live-dot{animation:none}}

/* ── Plan your timing (Korea live windows) ── */
.kr-timing .kr-tgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:760px;margin:26px auto 0;text-align:left}
@media(max-width:640px){.kr-timing .kr-tgrid{grid-template-columns:1fr}}
.kr-tcard{position:relative;border:1px solid var(--linelt);background:var(--paper);padding:24px 22px}
.kr-tcard.is-next{border-color:var(--acc-border);background:var(--maroon-soft)}
.kr-tcard.is-urgent .kr-tflag{background:#b8860b}
.kr-tflag{position:absolute;top:-11px;left:20px;font-family:var(--fdisp);font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:#fff;background:var(--maroon);padding:3px 10px}
.kr-tsub{font-size:12.5px;color:var(--dk3);text-transform:uppercase;letter-spacing:.05em;font-family:var(--fdisp);margin-top:4px}
.kr-tintake{font-family:var(--fbn);font-weight:700;font-size:18px;color:var(--dk);margin:6px 0 8px;line-height:1.3}
.kr-tby{font-size:14px;color:var(--dk2);line-height:1.6;margin:0 0 12px}
.kr-tby b{font-family:var(--fbn);color:var(--maroon)}
.kr-ttime{display:flex;align-items:baseline;gap:8px;font-family:var(--fdisp);color:var(--maroon);line-height:1;margin-bottom:14px}
.kr-ttime .n{font-size:34px}.kr-ttime .u{font-size:13px;color:var(--dk2)}
.kr-tlink{font-family:var(--fbn);font-weight:700;font-size:14px;color:var(--maroon)!important;text-decoration:underline;text-underline-offset:3px}
.kr-tnote{font-size:12.5px;color:var(--dk3);font-style:italic;line-height:1.65;margin:20px auto 0;max-width:62ch}

/* ── sticky section nav ── */
.kr-nav{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--linelt)}
.kr-nav-in{max-width:1100px;margin:0 auto;padding:0 clamp(16px,4vw,32px);display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.kr-nav-in::-webkit-scrollbar{display:none}
.kr-nav a{flex:none;padding:15px 14px;font-family:var(--fbn);font-weight:700;font-size:13.5px;color:var(--dk2)!important;border-bottom:2px solid transparent;white-space:nowrap}
.kr-nav a:hover{color:var(--maroon)!important}
.kr-nav a.is-on{color:var(--maroon)!important;border-bottom-color:var(--maroon)}
.kr-nav a.kr-nav-cta{margin-left:auto;color:#fff!important;background:var(--maroon);border-bottom:none;align-self:center;padding:9px 16px}
.kr-nav a.kr-nav-cta:hover{background:var(--maroon-hi);color:#fff!important}
[id^="ik-kr-"],#windows,#documents,#steps,#scholarships,#costs,#apply{scroll-margin-top:56px}

/* ── shared bits ── */
.kr-note{font-size:12.5px;color:var(--kt3);line-height:1.7;margin:18px 0 0;font-style:italic}
.kr-empty{padding:26px 20px;text-align:center;color:var(--kt3);border:1px dashed var(--kbd);font-size:14px}
.kr-btn{display:inline-flex;align-items:center;gap:8px;font-family:var(--fbn);font-weight:700;font-size:13.5px;padding:10px 16px;border:1px solid var(--ka);background:transparent;color:var(--ka)!important;cursor:pointer;transition:background-color .18s,color .18s,transform .18s}
.kr-btn:hover{transform:translateY(-1px)}
.kr-btn--wa{background:var(--ka);color:#fff!important;border-color:var(--ka)}
.kr-dark .kr-btn--wa{color:#111114!important}
.kr-btn--ghost{background:transparent}
.kr-chip{display:inline-flex;align-items:center;gap:5px;font-family:var(--fdisp);font-size:11.5px;letter-spacing:.05em;padding:3px 9px;border:1px solid var(--kbd);color:var(--kt2);background:var(--kpaper);line-height:1.5}
.kr-chip--sch{color:var(--ka);border-color:var(--ka);background:var(--kas)}
.kr-chip--open{color:#0d6b3a;border-color:#9bd8b6;background:#eaf7f0}
.kr-chip--soon{color:var(--ka);border-color:var(--ka)}
.kr-chip--mute{color:var(--kt3)}
.kr-dark .kr-chip--open{color:#6ee7a4;border-color:rgba(110,231,164,.4);background:rgba(110,231,164,.1)}
.kr-pill{display:inline-block;font-family:var(--fdisp);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;line-height:1.5}
.kr-pill--open{background:var(--ka);color:#fff}
.kr-dark .kr-pill--open{color:#111114}
.kr-pill--soon{border:1px solid var(--ka);color:var(--ka)}
.kr-pill--closed{border:1px solid var(--kbd);color:var(--kt3)}
.kr-urg{font-size:12.5px;color:var(--kt2);margin-left:8px;font-weight:700}
.kr-urg.is-hot{color:#ff8a8a}
.kr-scope .kr-urg.is-hot{color:var(--maroon)}

/* ── windows band ── */
.kr-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--kbd);border:1px solid var(--kbd);margin:0 0 34px}
.kr-stats div{background:var(--kb);padding:18px 12px;text-align:center}
.kr-stats b{display:block;font-family:var(--fdisp);font-size:34px;line-height:1;color:var(--ka);font-weight:400}
.kr-stats span{display:block;margin-top:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--kt3)}
@media(max-width:620px){.kr-stats{grid-template-columns:repeat(2,1fr)}}

.kr-rail-h h3{font-family:var(--fbn);font-weight:700;font-size:22px;color:var(--kt);margin:0 0 6px}
.kr-rail-h p{font-size:14px;color:var(--kt2);line-height:1.7;margin:0 0 20px;max-width:62ch}
.kr-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:44px}
@media(max-width:1000px){.kr-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.kr-rail{grid-template-columns:1fr}}
.kr-rcard{background:var(--kb);border:1px solid var(--kbd);padding:20px 18px;display:flex;flex-direction:column;gap:9px;position:relative}
.kr-rcard.is-hot{border-color:#ff8a8a;box-shadow:0 0 0 1px rgba(255,138,138,.35)}
.kr-rcard-top{min-height:24px}
.kr-rcard h4{font-family:var(--fbn);font-weight:700;font-size:18px;line-height:1.25;color:var(--kt);margin:4px 0 0}
.kr-rcard-prog{font-size:12.5px;color:var(--kt3);margin:0;line-height:1.5}
.kr-rcard-meta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;font-size:13px;color:var(--kt2)}
.kr-rcard-meta b{color:var(--kt)}
.kr-rcard-bd{font-size:12.5px;line-height:1.6;color:var(--kt2);margin:2px 0 6px;padding:10px 12px;background:var(--kpaper);border-left:2px solid var(--ka);flex:1}
.kr-rcard-bd i{vertical-align:-2px;margin-right:6px;color:var(--ka)}
.kr-rcard .kr-btn{align-self:flex-start}

.kr-listbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:0 0 16px}
.kr-seg{display:inline-flex;border:1px solid var(--kbd)}
.kr-seg-b{font-family:var(--fbn);font-weight:700;font-size:12.5px;padding:9px 13px;background:transparent;border:0;border-right:1px solid var(--kbd);color:var(--kt2);cursor:pointer}
.kr-seg-b:last-child{border-right:0}
.kr-seg-b.is-on{background:var(--ka);color:#fff}
.kr-dark .kr-seg-b.is-on{color:#111114}
.kr-q{flex:1 1 200px;min-width:0;font-family:var(--fbn);font-size:14px;padding:10px 12px;border:1px solid var(--kbd);background:var(--kb);color:var(--kt)}
.kr-list{border:1px solid var(--kbd)}
.kr-row{background:var(--kb);border-bottom:1px solid var(--kbd)}
.kr-row:last-child{border-bottom:0}
.kr-row.is-hot{box-shadow:inset 3px 0 0 #ff8a8a}
.kr-row summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:150px minmax(0,1.6fr) 130px minmax(0,1fr) 20px;gap:14px;align-items:center;padding:16px 18px}
.kr-row summary::-webkit-details-marker{display:none}
.kr-row summary:hover{background:var(--kpaper)}
.kr-row-st{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.kr-row-st .kr-urg{margin-left:0;font-size:12px}
.kr-row-uni b{display:block;font-family:var(--fbn);font-size:15px;color:var(--kt);line-height:1.3}
.kr-row-uni small{display:block;font-size:12px;color:var(--kt3);margin-top:3px;line-height:1.45}
.kr-row-win{font-family:var(--fdisp);font-size:15px;letter-spacing:.03em;color:var(--kt)}
.kr-row-tags{display:flex;flex-wrap:wrap;gap:6px}
.kr-chev{color:var(--kt3);transition:transform .2s}
.kr-row[open] .kr-chev{transform:rotate(180deg)}
.kr-row[open] summary{background:var(--kpaper)}
@media(max-width:820px){
  .kr-row summary{grid-template-columns:1fr 20px;gap:8px 10px}
  .kr-row-st{grid-column:1;flex-direction:row;align-items:center;flex-wrap:wrap;gap:8px}
  .kr-row-uni{grid-column:1}.kr-row-win{grid-column:1}.kr-row-tags{grid-column:1}
  .kr-chev{grid-column:2;grid-row:1;align-self:start}
}
.kr-row-body{padding:6px 18px 22px;display:grid;grid-template-columns:1fr 1fr;gap:18px 26px;background:var(--kpaper)}
@media(max-width:820px){.kr-row-body{grid-template-columns:1fr}}
.kr-kv dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:7px 16px;font-size:13px}
.kr-kv dt{color:var(--kt3)}.kr-kv dd{margin:0;color:var(--kt);line-height:1.5}
.kr-bd,.kr-sch{padding:14px 16px;background:var(--kb);border:1px solid var(--kbd)}
.kr-bd{border-left:3px solid var(--ka)}
.kr-bd h5,.kr-sch h5{margin:0 0 8px;font-family:var(--fdisp);font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ka);font-weight:400}
.kr-bd h5 i,.kr-sch h5 i{vertical-align:-2px;margin-right:6px}
.kr-bd p,.kr-sch p{margin:0;font-size:13px;line-height:1.7;color:var(--kt2)}
.kr-sch.is-empty{background:transparent;border-style:dashed}
.kr-tiers{display:flex;flex-wrap:wrap;gap:8px 16px;margin:0 0 8px;font-size:13.5px;color:var(--kt)}
.kr-tiers b{font-family:var(--fdisp);font-size:16px;font-weight:400;color:var(--ka)}
.kr-row-act{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px}
.kr-more{margin:16px auto 0;display:flex}

/* ── matcher ── */
.kr-pick h3{font-family:var(--fbn);font-weight:700;font-size:17px;margin:0 0 12px;color:var(--dk)}
.kr-bands{display:flex;flex-wrap:wrap;gap:8px}
.kr-band{font-family:var(--fdisp);font-size:22px;letter-spacing:.04em;min-width:66px;padding:11px 16px;background:#fff;border:1px solid var(--linelt);color:var(--dk2);cursor:pointer;transition:all .18s}
.kr-band:first-child{font-family:var(--fbn);font-size:14px;font-weight:700;letter-spacing:0}
.kr-band:hover{border-color:var(--maroon);color:var(--maroon)}
.kr-band.is-on{background:var(--maroon);border-color:var(--maroon);color:#fff}
.kr-mres{margin-top:8px}
.kr-grp{font-family:var(--fbn);font-weight:700;font-size:19px;color:var(--dk);margin:36px 0 16px;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.kr-grp small{font-family:var(--fdisp);font-size:15px;color:var(--maroon);font-weight:400}
.kr-banner{display:flex;gap:14px;align-items:flex-start;margin-top:26px;padding:18px 20px;background:var(--maroon-soft);border:1px solid var(--acc-border)}
.kr-banner i{color:var(--maroon);flex:none;margin-top:2px}
.kr-banner p{margin:0;font-size:14px;line-height:1.75;color:var(--dk2)}
.kr-banner a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.kr-mgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media(max-width:980px){.kr-mgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.kr-mgrid{grid-template-columns:1fr}}
.kr-mcard{background:#fff;border:1px solid var(--linelt);padding:22px 20px 18px;display:flex;flex-direction:column;gap:10px;transition:border-color .18s,box-shadow .18s,transform .18s}
.kr-mcard:hover{border-color:var(--maroon);box-shadow:0 12px 30px rgba(24,24,27,.08);transform:translateY(-3px)}
.kr-mcard--reach{background:var(--paper);border-style:dashed}
.kr-mcard-h{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.kr-mcard-h h4{font-family:var(--fbn);font-weight:700;font-size:16.5px;line-height:1.3;color:var(--dk);margin:0}
.kr-mcard-big{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.kr-mcard-big b{font-family:var(--fdisp);font-weight:400;font-size:46px;line-height:1;color:var(--maroon)}
.kr-mcard-big b.is-txt{font-family:var(--fbn);font-weight:700;font-size:22px;line-height:1.2}
.kr-mcard-big b.is-dim{color:var(--dk3)}
.kr-mcard-big small{font-size:12px;color:var(--dk3)}
.kr-mcard-next{display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:#0d6b3a;background:#eaf7f0;padding:7px 10px}
.kr-mcard-next i{flex:none}
.kr-mcard-why{flex:1;font-size:13px}
.kr-mcard-why summary{cursor:pointer;list-style:none;font-size:12.5px;font-weight:700;color:var(--maroon);display:inline-flex;align-items:center;gap:6px}
.kr-mcard-why summary::-webkit-details-marker{display:none}
.kr-mcard-why summary::before{content:'+';font-family:var(--fdisp);font-size:16px;line-height:1}
.kr-mcard-why[open] summary::before{content:'–'}
.kr-mcard-why p{margin:10px 0 0;line-height:1.7;color:var(--dk2)}
.kr-mcard-tu{margin:0;font-size:12.5px;color:var(--dk2);display:flex;align-items:center;gap:6px}
.kr-mcard-tu i{color:var(--maroon)}
.kr-mcard-foot{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding-top:12px;border-top:1px solid var(--linelt)}
.kr-src{font-size:11.5px;color:var(--dk3)}
.kr-src a{text-decoration:underline;text-underline-offset:2px;color:var(--dk3)!important}

.kr-ladder{margin-top:40px;border:1px solid var(--linelt);background:#fff}
.kr-ladder summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:16px 20px;font-family:var(--fbn);font-weight:700;font-size:15px;color:var(--dk)}
.kr-ladder summary::-webkit-details-marker{display:none}
.kr-ladder[open] summary i{transform:rotate(180deg)}
.kr-ladder-wrap{overflow-x:auto;padding:0 20px}
.kr-ladder table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:620px}
.kr-ladder th{font-family:var(--fdisp);font-weight:400;font-size:17px;letter-spacing:.04em;text-align:center;padding:10px 8px;color:var(--dk3);border-bottom:1px solid var(--linelt)}
.kr-ladder th:first-child{text-align:left;font-family:var(--fbn);font-size:11px;text-transform:uppercase;letter-spacing:.07em}
.kr-ladder td{padding:11px 8px;text-align:center;border-bottom:1px solid var(--linelt);color:var(--dk2)}
.kr-ladder td:first-child{text-align:left;color:var(--dk)}
.kr-ladder td em{font-style:normal;font-size:11px;color:var(--maroon);border:1px solid var(--acc-border);padding:1px 6px;margin-left:6px}
.kr-ladder .is-on{background:var(--maroon-soft);color:var(--maroon);font-weight:700}
.kr-ladder .kr-dim{color:var(--dk3);font-weight:400}
.kr-ladder .kr-note{padding:0 20px 18px}

/* ── lead form ── */
.kr-leadbox{margin-top:44px;padding:clamp(22px,4vw,36px);background:var(--ink);color:var(--hi);border-top:3px solid var(--gold)}
.kr-lead h4{font-family:var(--fbn);font-weight:700;font-size:22px;line-height:1.3;margin:0 0 8px;color:inherit}
.kr-lead-sub{margin:0 0 20px;font-size:14px;line-height:1.75;color:var(--mid);max-width:60ch}
.kr-f-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
@media(max-width:640px){.kr-f-row{grid-template-columns:1fr}}
.kr-lead label{display:flex;flex-direction:column;gap:6px;font-family:var(--fdisp);font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--mid)}
.kr-lead input[type=text],.kr-lead input[type=tel],.kr-lead select{font-family:var(--fbn);font-size:15px;letter-spacing:0;text-transform:none;padding:13px 14px;border:1px solid #3a3a44;background:#111114;color:#fff;min-height:48px;width:100%}
.kr-lead input:focus,.kr-lead select:focus{outline:2px solid var(--gold);outline-offset:1px}
.kr-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.kr-lead-go{margin-top:6px;width:100%;max-width:340px}
.kr-lead-go[disabled]{opacity:.6;cursor:wait}
.kr-lead-msg{min-height:20px;margin:12px 0 0;font-size:13.5px;color:var(--gold-hi)}
.kr-lead-msg.is-err{color:#ff9a9a}
.kr-lead-fine{margin:6px 0 0;font-size:12px;color:var(--lo);line-height:1.6}
.kr-lead-ok{text-align:center;padding:14px 4px}
.kr-lead-ok i{color:#6ee7a4}
.kr-lead-ok h4{margin:10px 0 8px}
.kr-lead-ok p{color:var(--mid);font-size:14px;line-height:1.7;max-width:46ch;margin:0 auto 18px}

/* ── photo band ── */
.kr-band-photo{position:relative;overflow:hidden;color:#fff;text-align:center}
.kr-band-photo::before{content:"";position:absolute;inset:0;background:var(--band-img) center/cover no-repeat;transform:scale(1.03)}
.kr-band-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,17,20,.72),rgba(32,20,26,.86))}
.kr-band-photo > *{position:relative;z-index:1}
.kr-band-photo h2{font-family:var(--fbn);font-weight:700;font-size:clamp(26px,4.4vw,44px);line-height:1.2;color:#fff;margin:0 auto 14px;max-width:24ch}
.kr-band-photo p{font-family:var(--fserif);font-style:italic;color:var(--mid);font-size:17px;line-height:1.6;max-width:52ch;margin:0 auto 26px}
.kr-band-photo .kr-band-btns{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}

/* ── documents checklist ── */
.kr-flags{background:var(--maroon-soft);border:1px solid var(--acc-border);border-left:4px solid var(--maroon);padding:20px 22px;margin:0 0 34px}
.kr-flags summary{display:flex;align-items:center;gap:9px;margin:0;font-family:var(--fbn);font-weight:700;font-size:17px;color:var(--maroon);cursor:pointer;list-style:none}
.kr-flags summary::-webkit-details-marker{display:none}
.kr-flags summary::after{content:'▾';margin-left:auto;font-size:14px}
.kr-flags[open] summary::after{content:'▴'}
.kr-flags[open] summary{margin-bottom:12px}
@media(min-width:821px){.kr-flags summary{pointer-events:none}.kr-flags summary::after{display:none}}
.kr-flags ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:9px 30px}
@media(max-width:760px){.kr-flags ul{grid-template-columns:1fr}}
.kr-flags li{font-size:13.5px;line-height:1.65;color:var(--dk2);padding-left:16px;position:relative}
.kr-flags li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;background:var(--maroon)}
.kr-flags li b{color:var(--dk)}
.kr-stagebar{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--linelt);margin-bottom:14px}
.kr-stage{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:14px 18px;background:#fff;border:0;border-right:1px solid var(--linelt);cursor:pointer;text-align:left;font-family:var(--fbn)}
.kr-stage:last-child{border-right:0}
.kr-stage b{font-size:15px;color:var(--dk)}
.kr-stage small{font-size:12px;color:var(--dk3)}
.kr-stage.is-on{background:var(--maroon)}
.kr-stage.is-on b,.kr-stage.is-on small{color:#fff}
.kr-stage-lead{font-size:14px;line-height:1.75;color:var(--dk2);margin:0 0 14px;max-width:70ch}
.kr-prog{height:5px;background:var(--linelt);margin-bottom:26px}
.kr-prog i{display:block;height:100%;background:var(--maroon);transition:width .3s}
.kr-dgroup{margin-bottom:28px}
.kr-dgroup h4{font-family:var(--fdisp);font-weight:400;font-size:17px;letter-spacing:.14em;text-transform:uppercase;color:var(--maroon);margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid var(--linelt)}
.kr-dgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:820px){.kr-dgrid{grid-template-columns:1fr}}
.kr-doc{background:#fff;border:1px solid var(--linelt);transition:border-color .18s,background-color .18s}
.kr-doc:hover{border-color:var(--maroon)}
.kr-doc-l{display:flex;gap:12px;align-items:flex-start;padding:15px 16px 6px;cursor:pointer}
.kr-dd{padding:0 16px 13px 50px}
.kr-dd summary{cursor:pointer;list-style:none;font-size:12px;font-weight:700;color:var(--dk3);display:inline-block}
.kr-dd summary::-webkit-details-marker{display:none}
.kr-dd summary::after{content:' ▾'}
.kr-dd[open] summary::after{content:' ▴'}
.kr-dd p{margin:8px 0 0;font-size:12.5px;line-height:1.75;color:var(--dk2)}
.kr-doc input{position:absolute;opacity:0;pointer-events:none}
.kr-box{flex:none;width:22px;height:22px;border:1.5px solid var(--dk3);display:flex;align-items:center;justify-content:center;color:transparent;margin-top:1px;transition:all .15s}
.kr-doc input:focus-visible + .kr-box{outline:3px solid var(--gold);outline-offset:2px}
.kr-doc.is-on{background:var(--maroon-soft);border-color:var(--acc-border)}
.kr-doc.is-on .kr-box{background:var(--maroon);border-color:var(--maroon);color:#fff}
.kr-doc-t{display:block;min-width:0}
.kr-doc-t b{display:block;font-family:var(--fbn);font-size:14.5px;line-height:1.4;color:var(--dk);margin-bottom:5px}
.kr-doc.is-on .kr-doc-t b{text-decoration:line-through;text-decoration-color:rgba(138,36,50,.45)}
.kr-tag{display:inline-block;font-family:var(--fdisp);font-size:10.5px;letter-spacing:.07em;text-transform:uppercase;padding:2px 7px;margin:0 5px 0 0;border:1px solid var(--linelt);color:var(--dk3);line-height:1.5}
.kr-tag--must{color:var(--maroon);border-color:var(--acc-border)}
.kr-tag--orig{background:var(--ink);border-color:var(--ink);color:#fff}
.kr-tag--fresh{color:#8a5a00;border-color:#e8cf9c;background:#fdf6e6}
.kr-dfoot{display:flex;flex-wrap:wrap;gap:16px 26px;align-items:center;justify-content:space-between;margin-top:8px;padding:20px 22px;background:var(--paper);border:1px solid var(--linelt)}
.kr-dfoot p{margin:0;font-size:13.5px;line-height:1.7;color:var(--dk2);max-width:60ch}

/* ── steps ── */
.kr-example{background:var(--ink);color:var(--hi);padding:26px clamp(18px,3vw,32px);margin:0 0 40px;border-top:3px solid var(--gold)}
.kr-example h3{font-family:var(--fbn);font-weight:700;font-size:17px;margin:0 0 18px;color:#fff}
.kr-example ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;position:relative}
.kr-example li{position:relative;padding:22px 10px 0 0;font-size:12.5px;line-height:1.5;color:var(--mid)}
.kr-example li::before{content:"";position:absolute;top:6px;left:0;right:0;height:1px;background:#3a3a44}
.kr-example li::after{content:"";position:absolute;top:1px;left:0;width:11px;height:11px;border-radius:50%;background:var(--gold)}
.kr-example li b{display:block;font-family:var(--fdisp);font-weight:400;font-size:17px;letter-spacing:.04em;color:#fff;margin-bottom:3px}
.kr-example p{margin:18px 0 0;font-size:12.5px;color:var(--lo);font-style:italic;line-height:1.6}
@media(max-width:860px){
  .kr-example ol{grid-template-columns:1fr;gap:0;border-left:1px solid #3a3a44;margin-left:5px}
  .kr-example li{padding:0 0 18px 22px}
  .kr-example li::before{display:none}
  .kr-example li::after{top:4px;left:-6px}
}
.kr-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media(max-width:820px){.kr-steps{grid-template-columns:1fr}}
.kr-step{position:relative;display:flex;gap:16px;padding:0}
.kr-step-n{flex:none;width:40px;height:40px;border-radius:50%;background:var(--maroon);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--fdisp);font-size:19px;margin-top:20px;margin-right:-30px;position:relative;z-index:1;box-shadow:0 0 0 5px var(--paper)}
.kr-step-b{flex:1;min-width:0;background:#fff;border:1px solid var(--linelt);padding:20px 22px 20px 44px}
.kr-step-m{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin-bottom:8px}
.kr-who{font-family:var(--fdisp);font-size:11px;letter-spacing:.09em;text-transform:uppercase;padding:2px 9px;border:1px solid var(--linelt);color:var(--dk3)}
.kr-who--you{color:var(--maroon);border-color:var(--acc-border)}
.kr-who--we{background:var(--maroon);border-color:var(--maroon);color:#fff}
.kr-who--uni{color:var(--dk2)}
.kr-when{font-size:12.5px;color:var(--dk3);font-weight:700}
.kr-step h3{font-family:var(--fbn);font-weight:700;font-size:18px;line-height:1.3;color:var(--dk);margin:0 0 10px}
.kr-step ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.kr-step li{font-size:13.5px;line-height:1.75;color:var(--dk2);padding-left:16px;position:relative}
.kr-step li::before{content:"";position:absolute;left:0;top:10px;width:6px;height:6px;background:var(--gold)}
@media(max-width:560px){.kr-step-b{padding:16px 16px 16px 40px}.kr-step-n{width:36px;height:36px;font-size:17px;margin-right:-28px}}

/* ── section headers used on this page ── */
.kr-head{max-width:70ch;margin:0 0 34px}
.kr-head .ik-h2{margin-bottom:12px}
.kr-head p{margin:0;font-size:15.5px;line-height:1.85;color:var(--dk2)}
.kr-dark .kr-head p{color:var(--mid)}

.kr-sd summary{cursor:pointer;list-style:none;font-size:12.5px;font-weight:700;color:var(--maroon);display:inline-block;margin:0 0 4px}
.kr-sd summary::-webkit-details-marker{display:none}
.kr-sd summary::after{content:' ▾'}
.kr-sd[open] summary::after{content:' ▴'}
.kr-sd[open] summary{margin-bottom:10px}
@media(min-width:821px){.kr-sd summary{display:none}}

/* ── mobile: card groups become swipeable carousels instead of long stacks ── */
@media(max-width:600px){
  .kr-mgrid,.kr-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-left:calc(-1 * clamp(18px,5vw,80px));margin-right:calc(-1 * clamp(18px,5vw,80px));padding:2px clamp(18px,5vw,80px) 14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .kr-mgrid::-webkit-scrollbar,.kr-rail::-webkit-scrollbar{display:none}
  .kr-mgrid > .kr-mcard,.kr-rail > .kr-rcard{flex:0 0 84%;scroll-snap-align:center}
  .kr-more{display:none}
}

/* Bengali conjuncts break under tracking — letter-spacing only for Latin display text */
html[lang="bn"] [class*="kr-"]{letter-spacing:0!important}

.kr-warn{color:#8a5a00;font-weight:700}
.kr-dark .kr-warn{color:#e8c16c}
.kr-srcline{margin-top:8px!important;font-size:11.5px!important;color:var(--kt3)!important}

/* ── visa-safety badge + lookup ── */
.kr-cert{display:inline-flex;align-items:center;gap:5px;font-family:var(--fbn);font-weight:700;font-size:11.5px;padding:3px 9px;border:1px solid var(--kbd);line-height:1.5;color:var(--kt2);background:var(--kpaper)}
.kr-cert--excellent,.kr-cert--certified{color:#0d6b3a;border-color:#9bd8b6;background:#eaf7f0}
.kr-cert--foreign_campus,.kr-cert--not_listed{color:#8a5a00;border-color:#e8cf9c;background:#fdf6e6}
.kr-dark .kr-cert--excellent,.kr-dark .kr-cert--certified{color:#6ee7a4;border-color:rgba(110,231,164,.4);background:rgba(110,231,164,.1)}
.kr-dark .kr-cert--foreign_campus,.kr-dark .kr-cert--not_listed{color:#e8c16c;border-color:rgba(232,193,108,.4);background:rgba(232,193,108,.1)}
.kr-mcard-cert{margin:-2px 0 0}
.kr-vstats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--linelt);border:1px solid var(--linelt);margin:0 0 30px}
.kr-vstats div{background:#fff;padding:18px 12px;text-align:center}
.kr-vstats b{display:block;font-family:var(--fdisp);font-weight:400;font-size:36px;line-height:1;color:#0d6b3a}
.kr-vstats .is-bad b{color:var(--maroon)}
.kr-vstats span{display:block;margin-top:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--dk3)}
@media(max-width:560px){.kr-vstats b{font-size:28px}.kr-vstats div{padding:14px 6px}}
.kr-vbox{background:var(--paper);border:1px solid var(--linelt);padding:clamp(18px,3vw,28px);margin-bottom:26px}
.kr-vbox label{display:block;font-family:var(--fbn);font-weight:700;font-size:16px;color:var(--dk);margin-bottom:10px}
.kr-vbox input{width:100%;font-family:var(--fbn);font-size:16px;padding:14px 16px;border:1px solid var(--linelt);background:#fff;color:var(--dk);min-height:52px}
.kr-vbox input:focus{outline:2px solid var(--maroon);outline-offset:1px}
.kr-vtry{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 0;font-size:13px;color:var(--dk3)}
.kr-vtry button{font-family:var(--fbn);font-weight:700;font-size:12.5px;padding:6px 12px;border:1px solid var(--linelt);background:#fff;color:var(--dk2);cursor:pointer}
.kr-vtry button:hover{border-color:var(--maroon);color:var(--maroon)}
#kr-vout{margin-top:16px}
.kr-vres{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border:1px solid var(--linelt);background:#fff}
.kr-vres h4{margin:0 0 6px;font-family:var(--fbn);font-weight:700;font-size:17px;color:var(--dk);line-height:1.35}
.kr-vres p{margin:0;font-size:14px;line-height:1.75;color:var(--dk2)}
.kr-vres.is-ok{border-color:#9bd8b6;background:#eaf7f0}.kr-vres.is-ok i{color:#0d6b3a}
.kr-vres.is-mid{border-color:#e8cf9c;background:#fdf6e6}.kr-vres.is-mid i{color:#8a5a00}
.kr-vres.is-bad{border-color:#e4a9b1;background:var(--maroon-soft)}.kr-vres.is-bad i{color:var(--maroon)}
.kr-vres i{flex:none;margin-top:2px}
.kr-vlist{list-style:none;margin:0;padding:0;border:1px solid var(--linelt);background:#fff}
.kr-vlist li{border-bottom:1px solid var(--linelt)}.kr-vlist li:last-child{border-bottom:0}
.kr-vlist button{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 16px;background:none;border:0;cursor:pointer;text-align:left;font-family:var(--fbn);font-size:14.5px;color:var(--dk)}
.kr-vlist button:hover{background:var(--paper)}
.kr-vtag{flex:none;font-size:11.5px;font-weight:700;padding:3px 9px;border:1px solid var(--linelt)}
.kr-vtag.is-ok{color:#0d6b3a;border-color:#9bd8b6;background:#eaf7f0}.kr-vtag.is-mid{color:#8a5a00;border-color:#e8cf9c;background:#fdf6e6}.kr-vtag.is-bad{color:var(--maroon);border-color:#e4a9b1;background:var(--maroon-soft)}
@media(max-width:560px){.kr-vlist button{flex-direction:column;align-items:flex-start}}
.kr-vexplain{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:820px){.kr-vexplain{grid-template-columns:1fr}}
.kr-vexplain > div{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;border:1px solid var(--linelt);background:#fff}
.kr-vexplain i{flex:none;color:var(--maroon);margin-top:2px}
.kr-vexplain p{margin:0;font-size:13.5px;line-height:1.7;color:var(--dk2)}
