
:root{--bg:#0b0f14;--text:#e5e7eb;--muted:#94a3b8;--edge:#1f2937;--card:#0e131a;--brand:#1d4ed8}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial}
.wrap{max-width:1200px;margin:0 auto;padding:18px}
a{color:#c7d2fe;text-decoration:none}
a:hover{text-decoration:underline}
.card{background:var(--card);border:1px solid var(--edge);border-radius:16px;padding:18px}
.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid #334155;background:#0f1720;color:#e5e7eb;border-radius:10px;padding:10px 14px;text-decoration:none;cursor:pointer}
.btn:hover{background:#111827}
.grid{display:grid;gap:14px}
.grid.courses{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.cats{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1024px){.grid.courses{grid-template-columns:repeat(2,1fr)}.grid.cats{grid-template-columns:repeat(3,1fr)}}
@media (max-width:720px){.grid.courses,.grid.cats{grid-template-columns:1fr}}
/* Top nav */
.nav{background:#0c1219;border-bottom:1px solid var(--edge)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px}
.nav .links{display:flex;gap:10px;flex-wrap:wrap}
.nav .chip{padding:8px 12px;border:1px solid var(--edge);border-radius:999px;background:#0f1720}
/* Models dropdown on hover */
.models-wrap{position:relative}
#modelsMenu{display:none;position:absolute;left:0;top:42px;background:#0c1219;border:1px solid var(--edge);border-radius:12px;padding:10px;z-index:40}
#ico-models:hover + #modelsMenu,#modelsMenu:hover{display:block}
.models-grid{display:grid;grid-template-columns:repeat(4, minmax(0,1fr));gap:8px}
.models-grid a{display:flex;align-items:center;justify-content:center;border:1px solid var(--edge);border-radius:10px;background:#0f1720;padding:10px}
/* Hero rotator */
.hero{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--edge);min-height:280px}
.hero img{width:100%;height:100%;object-fit:cover;filter:brightness(.8)}
.hero .label{position:absolute;left:18px;bottom:18px}
.hero .kicker{font-weight:700;letter-spacing:.12em;font-size:12px;color:#cbd5e1}
.hero .title{font-size:28px;font-weight:800;margin-top:6px}
.hero .sub{color:var(--muted);margin-top:6px}
/* Book promo */
.rtl{text-align:right;direction:rtl}
.ltr{text-align:left;direction:ltr}
/* Side dialog (registration) */
.side-sheet{position:fixed;inset:0;display:none;background:#0008;z-index:60}
.side-sheet.active{display:flex}
.side-sheet .box{margin-left:auto;width:min(520px,100%);height:100%;background:#0e131a;border-left:1px solid var(--edge);display:flex;flex-direction:column}
.side-sheet header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--edge)}
.side-sheet form{padding:18px;display:grid;gap:12px;overflow:auto}
.side-sheet .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:720px){.side-sheet .row{grid-template-columns:1fr}}
input,select,textarea{background:#0f1420;border:1px solid var(--edge);border-radius:10px;color:#e5e7eb;padding:10px}
.actions{display:flex;gap:10px;justify-content:flex-end;padding:0 18px 18px}
/* Course cards */
.course img{width:100%;height:180px;object-fit:cover;border-radius:12px;border:1px solid var(--edge)}
.badge{position:absolute;top:10px;left:10px;background:#0007;border:1px solid var(--edge);padding:4px 8px;border-radius:999px;font-size:12px}
.course{position:relative}
.course h3{margin:10px 0 6px;font-size:18px}
.course .meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:12px}
</style>
