:root{--navy:#0a2240;--navy2:#0e2f57;--gold:#c9a227;--emerald:#0f766e;--ink:#16283c;--mut:#5b6b7d;--bg:#f6f7f9;--card:#fff;--line:#e3e8ee}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Vazirmatn,Tahoma,Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.9;font-size:16px}
a{color:inherit;text-decoration:none}
a:hover{color:var(--emerald)}
.wrap{max-width:1120px;margin:0 auto;padding:0 16px}
.relaunch{background:linear-gradient(90deg,var(--emerald),#0b5a52);color:#fff;text-align:center;font-size:13.5px;padding:7px 12px}
.site-header{background:var(--navy);color:#fff;position:sticky;top:0;z-index:20;box-shadow:0 2px 14px rgba(6,24,46,.25)}
.header-in{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
.brand{display:flex;align-items:center;gap:11px}
.brand img{border-radius:10px}
.brand-t{display:flex;flex-direction:column;line-height:1.35}
.brand-t strong{font-size:21px;font-weight:800}
.brand-t small{font-size:11.5px;color:#bcd0e6}
.main-nav{display:flex;gap:4px;flex-wrap:wrap;margin-inline-start:auto}
.main-nav a{font-size:14px;padding:6px 10px;border-radius:8px;color:#dbe7f5}
.main-nav a:hover{background:var(--navy2);color:#fff}
.hero{background:linear-gradient(160deg,var(--navy),var(--navy2) 60%,#11406e);color:#fff;border-radius:18px;padding:38px 30px;margin:26px 0 8px;box-shadow:0 10px 30px rgba(10,34,64,.18)}
.hero h1{margin:0 0 10px;font-size:33px;font-weight:800;line-height:1.4}
.hero h1 span{color:var(--gold)}
.hero p{margin:0;color:#cfdfef;max-width:720px}
.hero-s{padding:26px 30px}
.hero-s h1{font-size:27px}
.sec{margin:30px 0}
.sec-h{display:flex;align-items:baseline;justify-content:space-between;border-bottom:2px solid var(--line);padding-bottom:8px;margin-bottom:16px}
.sec-h h2{font-size:20px;margin:0;font-weight:800;color:var(--navy)}
.sec-h a{font-size:13.5px;color:var(--emerald);font-weight:700}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.grid-feat{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:.18s}
.card:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(10,34,64,.12)}
.card-img{display:block;aspect-ratio:16/9;background:#dfe7ef;overflow:hidden}
.card-img img{width:100%;height:100%;object-fit:cover;display:block}
.card-img .ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#8fa6bd;font-weight:800;font-size:19px;background:linear-gradient(140deg,#e8eef5,#cfdce9)}
.card-b{padding:13px 15px 15px;display:flex;flex-direction:column;gap:7px}
.card h3{margin:0;font-size:15.5px;line-height:1.75;font-weight:700}
.card time{color:var(--mut);font-size:12.5px;margin-top:auto}
.chip{display:inline-block;background:#e8f4f2;color:var(--emerald);font-size:12px;font-weight:700;padding:2px 10px;border-radius:99px;width:fit-content}
.chip-l{background:#eef2f7;color:var(--navy);font-size:13px;padding:5px 13px}
.chips{display:flex;gap:8px;flex-wrap:wrap}
.subcats{margin:14px 0 20px}
.article{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:30px 34px;margin:26px 0}
.article h1{font-size:26px;line-height:1.6;margin:14px 0 8px;font-weight:800;color:var(--navy)}
.meta{display:flex;gap:16px;color:var(--mut);font-size:13.5px;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:20px}
.art-img{margin:0 0 22px}
.art-img img{width:100%;border-radius:12px;display:block}
.art-body p{margin:0 0 16px;text-align:justify}
.src-note{color:var(--mut);font-size:13px;border-top:1px dashed var(--line);padding-top:14px;margin-top:24px}
.empty{color:var(--mut)}
.site-footer{background:var(--navy);color:#c9d8ea;margin-top:44px;padding:28px 0 34px;font-size:14px}
.site-footer strong{color:#fff}
.foot-note{color:#8fa6bd;font-size:12.5px}
@media(max-width:640px){.hero h1{font-size:25px}.article{padding:22px 18px}.article h1{font-size:21px}.brand-t small{display:none}}

/* ===== v2 data-layer components ===== */
.ticker{background:var(--navy2);color:#dbe7f5;display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:9px 0;font-size:13.5px}
.ticker .tk{display:flex;gap:7px;align-items:baseline;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:99px;padding:3px 13px}
.ticker .tk b{color:#fff;font-size:15px}
.ticker .tk .up{color:#e9c85c;font-size:11.5px}
.statband{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:18px 0 6px}
.stat{background:linear-gradient(160deg,var(--navy),var(--navy2));color:#fff;border-radius:16px;padding:20px 22px;box-shadow:0 8px 22px rgba(10,34,64,.16)}
.stat .sv{font-size:31px;font-weight:800;line-height:1.3;color:#fff}
.stat .sv small{font-size:15px;color:#e9c85c;font-weight:700}
.stat .sl{color:#bcd0e6;font-size:13.5px;margin-top:4px}
.stat .sc{color:#8fa6bd;font-size:12px;margin-top:8px;border-top:1px dashed rgba(255,255,255,.18);padding-top:7px}
table.data{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:14.5px}
table.data th{background:var(--navy);color:#fff;font-weight:700;padding:11px 12px;text-align:right;white-space:nowrap}
table.data th.sortable{cursor:pointer}
table.data th.sortable:hover{background:var(--navy2)}
table.data th.sortable::after{content:" ⇅";color:#e9c85c;font-size:11px}
table.data td{padding:10px 12px;border-top:1px solid var(--line);vertical-align:top}
table.data tr:hover td{background:#f2f6fb}
table.data .num{font-weight:700;color:var(--navy);white-space:nowrap}
.flag{display:inline-block;background:#fdf3d7;color:#8a6d1a;border:1px solid #ecd28a;border-radius:6px;font-size:11px;padding:0 7px;margin-inline-start:6px;font-weight:700;white-space:normal}
.stamp{display:flex;gap:14px;flex-wrap:wrap;align-items:center;color:var(--mut);font-size:12.5px;margin:10px 0 4px}
.stamp .verified{background:#e8f4f2;color:var(--emerald);border-radius:99px;padding:2px 12px;font-weight:700}
.src-line{color:var(--mut);font-size:12.5px;margin-top:10px}
.src-line a{color:var(--emerald);font-weight:700}
.specbox{background:#f2f6fb;border:1px solid var(--line);border-inline-start:4px solid var(--gold);border-radius:12px;padding:6px 20px;margin:18px 0}
.specbox table{width:100%;border-collapse:collapse;font-size:14.5px}
.specbox td{padding:8px 6px;border-bottom:1px dashed var(--line)}
.specbox tr:last-child td{border-bottom:none}
.specbox td.k{color:var(--mut);width:180px;font-weight:700}
.specbox td.v{font-weight:700;color:var(--navy)}
.timeline{display:flex;gap:0;flex-wrap:wrap;margin:20px 0}
.tl-item{flex:1;min-width:150px;position:relative;padding:16px 12px 4px;border-top:3px solid var(--line)}
.tl-item::before{content:"";position:absolute;top:-8px;inset-inline-start:12px;width:13px;height:13px;border-radius:50%;background:var(--gold);border:2px solid #fff;box-shadow:0 0 0 2px var(--line)}
.tl-item .tl-t{font-weight:800;color:var(--navy);font-size:14px}
.tl-item .tl-d{color:var(--mut);font-size:13px}
.board-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:18px}
.board{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;flex-direction:column;gap:8px;transition:.18s}
.board:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(10,34,64,.12)}
.board h3{margin:0;font-size:17px;color:var(--navy)}
.board p{margin:0;color:var(--mut);font-size:13.5px;flex:1}
.board .cad{font-size:12px;color:var(--emerald);font-weight:700}
.board .upd{font-size:12px;color:var(--mut)}
.board.soon{opacity:.75;border-style:dashed}
.soon-badge{display:inline-block;background:#fdf3d7;color:#8a6d1a;border-radius:99px;font-size:11.5px;font-weight:800;padding:2px 11px;width:fit-content}
.prof-head{background:linear-gradient(160deg,var(--navy),var(--navy2) 60%,#11406e);color:#fff;border-radius:18px;padding:28px 30px;margin:26px 0 18px}
.prof-head h1{margin:0 0 6px;font-size:28px;font-weight:800}
.prof-head .sub{color:#cfdfef;font-size:14px;display:flex;gap:16px;flex-wrap:wrap}
.rankstrip{display:flex;gap:12px;flex-wrap:wrap;margin:14px 0}
.rankpill{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 18px;font-size:14px}
.rankpill b{color:var(--navy);font-size:19px}
.followbox{background:#fdf8e7;border:1px solid #ecd28a;border-radius:14px;padding:18px 22px;margin:22px 0}
.followbox h3{margin:0 0 8px;color:#8a6d1a;font-size:17px}
.followbox .fb-stats{display:flex;gap:22px;flex-wrap:wrap;margin:8px 0}
.followbox .fb-stats div b{display:block;font-size:19px;color:var(--navy)}
.followbox .fb-stats div span{font-size:12.5px;color:var(--mut)}
.cal-row{display:flex;gap:16px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 18px;margin-bottom:11px;flex-wrap:wrap}
.cal-date{background:var(--navy);color:#fff;border-radius:10px;padding:7px 14px;text-align:center;font-weight:800;font-size:14px;line-height:1.5;min-width:128px}
.cal-row .cal-b{flex:1;min-width:210px}
.cal-row .cal-b b{color:var(--navy)}
.cal-row .cal-b span{display:block;color:var(--mut);font-size:13px}
.calc{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px 30px;margin:26px 0}
.calc label{display:block;font-weight:700;font-size:14px;margin:13px 0 5px;color:var(--navy)}
.calc input,.calc select{width:100%;padding:10px 13px;border:1px solid var(--line);border-radius:10px;font-family:inherit;font-size:16px;background:#fbfcfe}
.calc .out{background:#f2f6fb;border-radius:12px;padding:16px 20px;margin-top:20px}
.calc .out div{display:flex;justify-content:space-between;border-bottom:1px dashed var(--line);padding:7px 0;font-size:15px}
.calc .out div:last-child{border-bottom:none}
.calc .out b{color:var(--navy)}
.river{display:flex;flex-direction:column}
.river a{display:flex;gap:14px;align-items:baseline;padding:10px 4px;border-bottom:1px dashed var(--line);font-size:15px}
.river a:hover{background:#f2f6fb}
.river time{color:var(--mut);font-size:12.5px;white-space:nowrap}
.river .code{color:#b08d1e;font-size:11.5px;font-weight:800;white-space:nowrap}
.gloss dt{font-weight:800;color:var(--navy);font-size:16.5px;margin-top:18px}
.gloss dd{margin:4px 0 0;color:var(--ink)}
.csv-btn{display:inline-block;background:var(--emerald);color:#fff!important;border-radius:9px;padding:7px 16px;font-size:13.5px;font-weight:700}
.csv-btn:hover{background:#0b5a52}
.sub-box{border:2px solid var(--emerald);background:#f0f9f7;border-radius:14px;padding:18px 22px;margin:24px 0}
.sub-box h2{color:var(--navy);margin:0 0 10px;font-size:20px}
.sub-box p{margin:8px 0;line-height:1.9}
.sub-btn{display:inline-block;background:var(--emerald);color:#fff!important;border-radius:10px;padding:11px 24px;font-size:16px;font-weight:800}
.sub-btn:hover{background:#0b5a52}
.sub-note{font-size:12.5px;color:var(--mut)}
.sub-box-wait{border-style:dashed;background:#fbfbf7}
.community{background:linear-gradient(90deg,var(--navy),var(--navy2));color:#fff;border-radius:16px;padding:22px 26px;display:flex;gap:18px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.community p{margin:0;color:#cfdfef;font-size:14px;max-width:640px}
.community strong{color:#fff}
.en-strip{font-size:13.5px}
.mini-league{width:100%;border-collapse:collapse;font-size:14.5px}
.mini-league td,.mini-league th{padding:8px 10px;border-bottom:1px solid var(--line);text-align:right}
.mini-league th{color:var(--mut);font-weight:700}


/* ---- v3: richer visual system (navy/gold family + teal accent) ---- */
.main-nav{flex-wrap:wrap}
.brand-logo{height:46px;width:auto}
.hero-v3{background:linear-gradient(135deg,#0a1937 0%,#12294f 55%,#1b4d5c 100%);color:#fff;border-bottom:4px solid #e9b74c}
.hero-v3 h1{color:#fff}.hero-v3 p{color:#d9e2f0}
.chip-accent{display:inline-block;background:#2aa198;color:#fff;border-radius:999px;padding:2px 10px;font-size:12px;margin:2px}
.card{transition:transform .15s ease,box-shadow .15s ease}
.card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(10,25,55,.18)}
.ad-slot{border:2px dashed #e9b74c;background:#fff8e6;border-radius:10px;text-align:center;padding:14px 10px;margin:18px 0}
.ad-slot .ad-label{display:inline-block;background:#0a1937;color:#e9b74c;font-size:11px;border-radius:999px;padding:2px 10px;margin-bottom:6px}
.ad-slot p{margin:4px 0;color:#555;font-size:14px}
.ad-slot img{max-width:100%;height:auto;display:block;margin:8px auto 0}
.ad-sidebar{max-width:300px;margin:18px auto}
.newsletter-band{background:linear-gradient(135deg,#0a1937,#2aa198);color:#fff;border-radius:14px;padding:22px;margin:24px 0}
.newsletter-band h2{color:#fff}.newsletter-band p{color:#d9e2f0}
.newsletter-band input[type=email]{padding:10px;border-radius:8px;border:0;width:min(320px,80%)}
.newsletter-band button{background:#e9b74c;color:#0a1937;border:0;border-radius:8px;padding:10px 18px;font-weight:700;cursor:pointer}
.news-row{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #eee}
.news-row .nd{color:#888;font-size:12px;white-space:nowrap}
.dossier-teaser{border-right:4px solid #e9b74c;background:#fdf6e3;border-radius:10px;padding:18px;margin:24px 0}
.feat-archive{margin:34px 0 8px}
.feat-archive>h2{border-bottom:3px solid #e9b74c;padding-bottom:8px}
.feat-current{margin:6px 0 4px}
.feat-meta{color:#666;font-size:13.5px;margin:2px 0 10px}
.rules-box{background:#f2f7f7;border:1px solid #2aa198;border-radius:10px;padding:16px}
.note-box{background:#fff8e6;border:1px solid #e9b74c;border-radius:10px;padding:16px}
.src-line{font-size:13px;color:#666}
form.v3form label{display:block;margin:12px 0 4px;font-weight:700}
form.v3form input,form.v3form textarea,form.v3form select{width:100%;padding:10px;border:1px solid #ccc;border-radius:8px}
form.v3form button{background:#0a1937;color:#e9b74c;border:0;border-radius:8px;padding:12px 22px;font-weight:700;cursor:pointer;margin-top:14px}
table.data td,table.data th{vertical-align:top}
/* ---- v3.3: IB index responsive grid ---- */
.ib-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ib-grid .card{margin:0}
@media(max-width:1024px){.ib-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.ib-grid{grid-template-columns:1fr}}
/* ---- v3.4: grouped nav + dropdowns + mobile burger (owner request 2026-10-26) ---- */
.header-in{position:relative}
.nav-toggle{position:absolute;opacity:0;pointer-events:none}
.nav-burger{display:none}
.main-nav{flex-wrap:nowrap;align-items:center}
.nav-item{position:relative;display:inline-block}
.nav-item .caret{font-size:10px;color:#e9b74c}
.main-nav .sub{display:none;position:absolute;top:100%;inset-inline-start:0;background:#0d2247;border:1px solid rgba(233,183,76,.35);border-radius:10px;padding:6px;min-width:195px;box-shadow:0 12px 28px rgba(6,24,46,.35);z-index:40}
.nav-item:hover .sub,.nav-item:focus-within .sub{display:block}
.main-nav .sub a{display:block;padding:8px 12px;white-space:nowrap}
@media(max-width:920px){
.header-in{flex-wrap:nowrap}
.nav-burger{display:inline-block;margin-inline-start:auto;font-size:20px;line-height:1;color:#e9b74c;border:1px solid rgba(233,183,76,.55);border-radius:8px;padding:6px 13px;cursor:pointer}
.main-nav{display:none;position:absolute;top:100%;inset-inline:0;background:#0a1937;flex-direction:column;align-items:stretch;gap:2px;padding:10px 6px 14px;border-top:1px solid rgba(233,183,76,.3);box-shadow:0 18px 30px rgba(6,24,46,.4);max-height:72vh;overflow:auto;margin:0}
.nav-toggle:checked~.main-nav{display:flex}
.nav-item{display:block}
.main-nav .sub{position:static;display:block;background:transparent;border:0;box-shadow:none;padding:0 18px 6px;min-width:0}
.main-nav .sub a{padding:6px 8px;font-size:13.5px;color:#c9d8ec;white-space:normal}
.nav-item>a{color:#e9b74c;font-weight:700}
}
/* ---- v3.5: owner fixes 2026-10-26 (scrolling ticker, accordion nav, bigger brand, featured cards) ---- */
.ticker{overflow:hidden}
.ticker-track{display:inline-flex;gap:10px;white-space:nowrap;direction:ltr;animation:tickmove 55s linear infinite;padding-inline-end:10px}
.ticker .tk{direction:rtl;flex:none}
.ticker:hover .ticker-track{animation-play-state:paused}
@keyframes tickmove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){.ticker-track{animation:none}}
.brand-logo{height:54px}
.brand-t strong{font-size:21px}
.brand-t small{font-size:12.5px;color:#cfdef2}
.nav-burger{background:rgba(233,183,76,.14);font-weight:700}
.nav-item>a::after{content:" ▾";color:#e9b74c;font-size:10px}
.sub-t{position:absolute;opacity:0;pointer-events:none}
.sub-arrow{display:none}
.ph.brand-ph{background:linear-gradient(135deg,#0a1937 0%,#12294f 55%,#1b4d5c 100%);color:#e9b74c;font-weight:800;font-size:17px;display:flex;align-items:center;justify-content:center;text-align:center;padding:10px}
.logo-ph{background:#fff;display:flex;align-items:center;justify-content:center;height:100%;min-height:120px;padding:14px}
.logo-ph img{max-width:76%;max-height:110px;object-fit:contain}
.prof-logo{height:58px;max-width:190px;object-fit:contain;background:#fff;border-radius:10px;padding:6px 12px;vertical-align:middle;margin-inline-start:14px}
.feat2 .card h3{font-size:20px;line-height:1.8}
@media(max-width:920px){
.sub-arrow{display:inline-block;color:#e9b74c;padding:8px 14px;cursor:pointer;font-size:14px}
.main-nav .sub{display:none}
.sub-t:checked~.sub{display:block}
.nav-item{display:flex;flex-wrap:wrap;align-items:center}
.nav-item>a{flex:1}
.nav-item>a::after{content:""}
}
/* ---- v3.10: US economy tools cross-link card (owner request 2026-10-28) ---- */
.us-eco{background:linear-gradient(135deg,#0a1937 0%,#12294f 55%,#1b4d5c 100%);color:#fff;border-bottom:4px solid #e9b74c;border-radius:14px;padding:22px;margin:24px 0}
.us-eco h2{color:#fff;margin-top:0}
.us-eco p{color:#d9e2f0}
.us-eco-btns{margin-bottom:0}
.us-eco-btn{display:inline-block;background:#e9b74c;color:#0a1937;border-radius:8px;padding:10px 18px;font-weight:700;margin:4px 0 4px 8px;text-decoration:none}
.us-eco-btn.ghost{background:transparent;color:#e9b74c;border:2px solid #e9b74c}
/* ---- v3.12: courses directory feature band on homepage (owner request 2026-11-05) ---- */
.crs-home{background:linear-gradient(135deg,#07332e 0%,#0a5a54 55%,#2aa198 130%);color:#fff;border:2px solid #2aa198;border-radius:14px;padding:22px;margin:24px 0;box-shadow:0 8px 26px rgba(7,51,46,.28)}
.crs-home .crs-eyebrow{display:inline-block;background:#e9b74c;color:#0a1937;border-radius:999px;padding:2px 12px;font-size:12.5px;font-weight:800;margin:0 0 8px}
.crs-home h2{color:#fff;margin-top:0}
.crs-home p{color:#e2f2ef}
.crs-home-list{list-style:none;padding:0;margin:12px 0 4px}
.crs-home-list li{padding:9px 0;border-bottom:1px dashed rgba(255,255,255,.28)}
.crs-home-list li:last-child{border-bottom:0}
.crs-home-btns{margin-bottom:0}
.crs-home-btn{display:inline-block;background:#e9b74c;color:#0a1937;border-radius:8px;padding:12px 26px;font-weight:800;font-size:1.05em;text-decoration:none}
/* ---- v3.11: editor bio card on /about/ (owner request 2026-10-31) ---- */
.editor-card{border:1px solid rgba(10,25,55,.16);border-inline-start:5px solid #e9b74c;background:linear-gradient(180deg,#fdf8ec,#fff);border-radius:12px;padding:22px 24px;margin:26px 0}
.editor-card .ed-kicker{display:inline-block;background:#0a1937;color:#e9b74c;border-radius:999px;padding:2px 12px;font-size:12.5px;font-weight:700;margin-bottom:8px}
.editor-card h2{margin-top:4px}
.editor-card .ed-lead{font-size:16.5px;line-height:2;color:#22355c;font-weight:600}
.editor-card p{line-height:2.05}
.editor-card .ed-photo{float:inline-start;width:190px;max-width:42%;height:auto;border:3px solid #e9b74c;border-radius:10px;margin:4px 0 10px;margin-inline-end:18px;box-shadow:0 4px 14px rgba(10,25,55,.18)}
.editor-card::after{content:"";display:block;clear:both}
@media (max-width:640px){.editor-card .ed-photo{float:none;display:block;width:200px;max-width:64%;margin:0 auto 14px}}
.editor-links{border-top:1px dashed rgba(10,25,55,.28);margin-top:16px;padding-top:12px;font-size:14.5px;line-height:2}
/* ---- v3.12: owner fixes 2026-11-01 (horizontal in-article ad, manager hero, nav grace) ---- */
.ad-leaderboard{max-width:760px;margin:14px auto;padding:10px}
.ad-leaderboard img{width:100%;height:auto}
.mgr-hero{display:flex;gap:20px;align-items:stretch;background:linear-gradient(135deg,#0a1937 0%,#12294f 60%,#1b4d5c 100%);border:1px solid rgba(233,183,76,.5);border-bottom:5px solid #e9b74c;border-radius:14px;padding:18px;margin:16px 0 22px;color:#fff}
.mgr-hero img{width:300px;max-width:44%;object-fit:cover;border-radius:10px;border:2px solid rgba(233,183,76,.65)}
.mgr-hero-b{flex:1;min-width:0}
.mgr-kicker{display:inline-block;background:#e9b74c;color:#0a1937;font-size:12.5px;font-weight:800;border-radius:999px;padding:2px 12px}
.mgr-hero h2{color:#fff;margin:10px 0 2px;font-size:27px}
.mgr-role{color:#cfe0f4;margin:0 0 10px}
.mgr-role a{color:#f5d67b}
.mgr-ach{color:#eef3fa;line-height:2.05;margin:0}
.mgr-credit{color:#9db4d2;font-size:12.5px;margin:10px 0 0}
@media(max-width:640px){.mgr-hero{flex-direction:column}.mgr-hero img{width:100%;max-width:100%;max-height:300px}}
.tmgr-home{display:flex;gap:18px;align-items:center;background:linear-gradient(180deg,#fdf8ec,#fff);border:1px solid rgba(10,25,55,.14);border-inline-start:6px solid #e9b74c;border-radius:14px;padding:16px 18px;margin:24px 0}
.tmgr-home img{width:170px;height:130px;object-fit:cover;border-radius:10px;border:2px solid rgba(233,183,76,.6)}
.tmgr-home h2{margin-top:0}
.tmgr-home p{margin-bottom:0;line-height:2}
@media(max-width:640px){.tmgr-home{flex-direction:column;align-items:flex-start}.tmgr-home img{width:100%;height:auto;max-height:260px}}
.excl-chip{display:inline-block;background:#e9b74c;color:#0a1937;font-weight:800;font-size:13px;border-radius:999px;padding:2px 12px}
.crs-note{background:#eef6f5;border-radius:10px;padding:8px 12px;font-size:14px;line-height:1.9}
.crs-reg{display:inline-block;background:#0a1937;color:#fff!important;border-radius:10px;padding:8px 18px;font-weight:800;text-decoration:none}
.crs-reg:hover{background:#2aa198}
.crs-guide{background:#fdf6dd;border:1px solid #e9c85c;border-radius:12px;padding:14px 18px;line-height:2}
.crs-card details{margin-top:8px}
.crs-card summary{cursor:pointer;font-weight:800;color:#0a1937}
.excl-sources{margin-top:26px;border-top:2px solid #e9b74c;padding-top:12px}
.excl-sources h2{margin-top:4px}
.excl-sources ul{line-height:2.1}
@media(min-width:921px){
.main-nav .sub{display:block;visibility:hidden;opacity:0;transform:translateY(6px);transition:opacity .18s ease,transform .18s ease,visibility 0s linear .5s;pointer-events:none}
.nav-item:hover .sub,.nav-item:focus-within .sub{visibility:visible;opacity:1;transform:none;transition-delay:0s,0s,0s;pointer-events:auto}
.main-nav .sub::before{content:"";position:absolute;top:-14px;inset-inline:0;height:14px}
}
/* ---- v3.13: AFEX 2026 hub + homepage special box (owner request 2026-11-11) ---- */
.afx-hero{background:linear-gradient(135deg,#0a1937 0%,#12294f 55%,#1b4d5c 100%);color:#fff;border:2px solid #2aa198;border-bottom:5px solid #e9b74c;border-radius:14px;padding:26px 24px;margin:18px 0 26px}
.afx-hero h1{color:#fff;margin:10px 0 6px;font-size:34px}
.afx-chip{display:inline-block;background:#e9b74c;color:#0a1937;border-radius:999px;padding:2px 14px;font-weight:800;font-size:13px}
.afx-dek{color:#d9e2f0;font-size:17px;margin:4px 0 16px}
.afx-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}
.afx-fact{background:rgba(255,255,255,.07);border:1px solid rgba(42,161,152,.55);border-radius:10px;padding:10px 12px}
.afx-fact span{display:block;color:#9fc6c0;font-size:12.5px;margin-bottom:4px}
.afx-fact strong{color:#fff;font-size:15px;line-height:1.9}
@media(max-width:820px){.afx-facts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.afx-facts{grid-template-columns:1fr}}
.afx-cd{margin:16px 0 6px;text-align:center}
.afx-cd-nums{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.afx-cd-u{background:#0d2247;border:1px solid #2aa198;border-radius:10px;padding:8px 16px;min-width:86px}
.afx-cd-u b{display:block;font-size:32px;color:#f5d67b}
.afx-cd-u i{font-style:normal;font-size:13px;color:#c9d8ec}
.afx-cd-state{color:#9fc6c0;margin-top:8px;font-size:14px}
.afx-hero .src-line{color:#9db4d2}
.afx-hero a{color:#f5d67b}
.afx-ibs{margin:12px 0 0;color:#d9e2f0}
.afx-empty{border:2px dashed rgba(42,161,152,.6);border-radius:10px;padding:16px;color:#446;background:#f2f7f7;text-align:center}
.afx-live{list-style:none;padding:0;margin:0}
.afx-live li{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid #eee}
.afx-live .lt{flex:none;background:#2aa198;color:#fff;border-radius:8px;padding:2px 10px;font-size:13px;height:fit-content}
.afx-fig{margin:0}
.afx-fig img{width:100%;height:auto;border-radius:10px;display:block}
.afx-fig figcaption{font-size:13.5px;color:#445;padding:8px 2px}
.afx-fig .cr{color:#888;font-size:12px}
.afx-vid{width:100%;border-radius:10px;background:#000}
.afx-qs{background:#f2f7f7;border:1px solid #2aa198;border-radius:10px;padding:14px 18px;line-height:2.1}
.afx-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0}
@media(max-width:820px){.afx-strip{grid-template-columns:1fr}}
.afx-strip a{display:block;background:#0a1937;color:#fff;border-radius:12px;padding:18px;text-decoration:none;border-bottom:4px solid #2aa198}
.afx-strip a strong{color:#f5d67b;display:block;font-size:17px;margin-bottom:4px}
.afx-box{background:linear-gradient(135deg,#0a1937 0%,#12294f 60%,#1b4d5c 100%);color:#fff;border:2px solid #2aa198;border-radius:14px;padding:22px 24px;margin:24px 0;box-shadow:0 8px 26px rgba(10,25,55,.3)}
.afx-box h2{color:#fff;margin:8px 0 6px}
.afx-box p{color:#d9e2f0}
.afx-box-chip{display:inline-block;background:#e9b74c;color:#0a1937;border-radius:999px;padding:2px 12px;font-size:12.5px;font-weight:800}
.afx-box-cd{display:inline-block;background:#2aa198;color:#fff;border-radius:999px;padding:3px 14px;font-weight:800}
.afx-box ul{list-style:none;padding:0;margin:10px 0}
.afx-box ul li{padding:7px 0;border-bottom:1px dashed rgba(255,255,255,.25)}
.afx-box ul li:last-child{border-bottom:0}
.afx-box ul a{color:#fff;text-decoration:none;font-weight:700}
.afx-box-links{font-size:14px;margin:10px 0 2px}
.afx-box-links a{color:#7fd8cf;font-weight:700;text-decoration:none}
.afx-btn{display:inline-block;background:#e9b74c;color:#0a1937;border-radius:8px;padding:11px 22px;font-weight:800;text-decoration:none;margin:4px 0 4px 8px}
.afx-btn.ghost{background:transparent;color:#e9b74c;border:2px solid #e9b74c}
