/* Countries page (public/countries.html, scripts/build-countries.mjs) and the "Study by subject" section of the portal
   Study Programs page (.sbs). Built on page.css; colours via var(--blue). Font rule: max 13px, headings/bold 600 -.025em,
   buttons on PC 500. No border lines – soft shadows only. */
.cty-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 20px 50px rgba(15,23,42,.08),0 4px 12px rgba(15,23,42,.05);display:flex;flex-direction:column;min-width:0}
.cty-ph{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#EEF2F8}
.cty-ph img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}
.cty-card:hover .cty-ph img{transform:scale(1.04)}
.cty-st{position:absolute;left:12px;top:12px;font-style:normal;font-size:12px;font-weight:600;letter-spacing:-.025em;color:var(--navy);background:rgba(255,255,255,.92);border-radius:999px;padding:4px 10px;box-shadow:0 4px 12px rgba(15,23,42,.12)}
.cty-st.on{background:var(--blue);color:#fff}
.cty-b{display:flex;flex-direction:column;gap:10px;padding:16px 18px 18px;flex:1}
.cty-n{display:flex;align-items:center;gap:9px;margin:0;font-size:13px;font-weight:600;letter-spacing:-.025em;color:var(--navy)}
.cty-flag{width:24px;height:16px;border-radius:3px;object-fit:cover;box-shadow:0 0 0 1px rgba(15,23,42,.08)}
.cty-l{margin:0;font-size:13px;line-height:1.55;color:#2D3854}
.cty-soon .cty-l{color:var(--muted)}
.cty-ask{margin-top:auto;align-self:flex-start;height:38px;padding:0 16px;border-radius:9px;font-size:13px}
/* Georgia: the feature card – photo left, details right on PC */
.cty-live{flex-direction:row}
.cty-live .cty-ph{flex:0 0 46%;aspect-ratio:auto;min-height:340px}
.cty-live .cty-b{padding:22px 24px}
.cty-facts{display:flex;flex-wrap:wrap;gap:8px 18px}
.cty-facts span{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#2D3854}
.cty-facts svg{width:18px;height:18px;color:var(--blue)}
.cty-facts b{font-weight:600;letter-spacing:-.025em;color:var(--navy)}
.cty-h{font-size:12px;color:var(--muted);margin-top:2px}
.cty-chips{display:flex;flex-wrap:wrap;gap:7px}
.cty-chips a{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:var(--blue-soft,#EAF1FF);font-size:12.5px;font-weight:500;color:var(--navy);transition:background .18s ease,color .18s ease}
.cty-chips a:hover{background:var(--blue);color:#fff}
.cty-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.cty-btns .btn{height:42px;padding:0 20px;border-radius:9px;font-size:13px}
.cty-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}

/* "Study by subject" on the portal Study Programs page */
.sbs{margin-top:34px}
.sbs-c{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;letter-spacing:-.025em;color:var(--navy);margin:2px 0 10px}
.sbs-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sbs-t{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fff;border-radius:14px;color:var(--navy);transition:transform .18s ease;box-shadow:0 6px 18px rgba(15,23,42,.10),0 1px 4px rgba(15,23,42,.06)}
.sbs-t:hover{transform:translateY(-2px)}
.sbs-t>svg{flex:0 0 auto;width:36px;height:36px;padding:8px;border-radius:10px;background:var(--blue-soft,#EAF1FF);color:var(--blue)}
.sbs-t b{display:block;font-size:13px;font-weight:600;letter-spacing:-.025em}
.sbs-t small{display:block;font-size:12px;color:var(--muted);margin-top:2px}
.sbs-gd{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:14px}
.sbs-gd span{font-size:12px;color:var(--muted);margin-right:4px}
.sbs-gd a{padding:6px 11px;border-radius:999px;background:var(--blue-soft,#EAF1FF);font-size:12.5px;font-weight:500;color:var(--navy)}
.sbs-gd a:hover{background:var(--blue);color:#fff}

@media (max-width:1000px){.cty-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sbs-g{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:900px){
  .cty-live{flex-direction:column}
  .cty-live .cty-ph{flex:none;aspect-ratio:16/9;min-height:0}
  .cty-live .cty-b{padding:16px 18px 18px}
}
@media (max-width:640px){
  .cty-grid{gap:12px}
  .cty-soon .cty-b{padding:12px 12px 14px;gap:8px}
  .cty-soon .cty-l{font-size:12px}
  .cty-ask{height:36px;padding:0 12px;font-size:12px;align-self:stretch;justify-content:center}
  .cty-btns .btn{flex:1 1 0;justify-content:center}
  .sbs-g{grid-template-columns:1fr}
}

/* Georgia country hub on the portal (/countries/georgia): category cards with link rows (georgiaHub()) */
.gh{margin-top:30px}
.gh-g{columns:2;column-gap:18px}
.gh-cat{break-inside:avoid;margin-bottom:18px;display:block;background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 20px 50px rgba(15,23,42,.08),0 4px 12px rgba(15,23,42,.05)}
.gh-ph{position:relative;aspect-ratio:3/1;overflow:hidden;background:#EEF2F8}
.gh-ph img{width:100%;height:100%;object-fit:cover;display:block}
.gh-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,75,0) 35%,rgba(11,31,75,.62))}
.gh-ph span{position:absolute;left:16px;bottom:12px;z-index:1;color:#fff}
.gh-ph b{display:block;font-size:13px;font-weight:600;letter-spacing:-.025em}
.gh-ph small{display:block;font-size:12px;opacity:.9}
.gh-ls{display:flex;flex-direction:column;gap:8px;padding:14px}
.gh-l{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:#fff;color:var(--navy);box-shadow:0 6px 18px rgba(15,23,42,.08),0 1px 4px rgba(15,23,42,.05);transition:transform .18s ease,background .18s ease}
.gh-l:hover{transform:translateY(-1px);background:var(--blue-soft,#EAF1FF)}
.gh-l>svg:first-child{flex:0 0 auto;width:32px;height:32px;padding:7px;border-radius:9px;background:var(--blue-soft,#EAF1FF);color:var(--blue)}
.gh-l>svg:last-child{flex:0 0 auto;width:14px;height:14px;margin-left:auto;color:var(--muted)}
.gh-l b{display:block;font-size:13px;font-weight:600;letter-spacing:-.025em}
.gh-l small{display:block;font-size:12px;color:var(--muted);margin-top:1px}
.gh-ab{margin-top:22px}
.gh-ab h2{font-size:13px;font-weight:600;letter-spacing:-.025em;color:var(--navy);margin:0}
@media (max-width:900px){.gh-g{columns:1}}
@media (max-width:640px){.gh-ls{padding:10px;gap:7px}.gh-l{padding:9px 10px}}
/* font-cap: PC text 13px (auto, do not edit) */
@media (min-width:761px){.cty-btns .btn{font-size:13px;font-weight:500}}
