/* Trang web Gen Story (spec 2026-10-02-dang-mot-cham-dot-1 mục 12): màu và phông theo bộ nhận diện (hướng J "Sóng giọng
   kể"), phông Plus Jakarta Sans tự lưu (OFL, fonts/), không gọi tài nguyên ngoài. */
@font-face {
  font-family: "Plus Jakarta Sans";
  src: url("fonts/PlusJakartaSans-Variable.ttf") format("truetype");
  font-weight: 200 800;
  font-display: swap;
}
:root { --nen: #0b1e2d; --nen-sau: #06131d; --chu: #ffffff; --phu: #a9bcc8; --nhan: #19c3b0; --vien: #1d3446; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--nen); color: var(--chu); font: 17px/1.65 "Plus Jakarta Sans", system-ui, sans-serif; }
a { color: var(--nhan); }
a:focus-visible { outline: 2px solid var(--nhan); outline-offset: 2px; }
header, main, footer { max-width: 860px; margin: 0 auto; padding: 24px 16px; }
header { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
header img { height: 44px; width: auto; display: block; }
nav a { margin-left: 16px; color: var(--phu); text-decoration: none; font-weight: 600; }
nav a:hover { color: var(--chu); }
h1 { font-size: 34px; line-height: 1.2; margin: 8px 0 4px; font-weight: 800; }
h2 { font-size: 22px; margin: 32px 0 8px; font-weight: 700; }
h3 { font-size: 18px; margin: 24px 0 4px; font-weight: 700; }
.slogan { color: var(--nhan); font-size: 20px; font-weight: 600; margin: 0 0 24px; }
.phu { color: var(--phu); }
section[lang] { border-top: 1px solid var(--vien); padding-top: 8px; }
.kenh { list-style: none; padding: 0; display: flex; gap: 12px; flex-wrap: wrap; }
.kenh a { display: inline-block; padding: 10px 18px; border: 1px solid var(--nhan); border-radius: 999px; text-decoration: none; font-weight: 600; }
footer { color: var(--phu); font-size: 14px; border-top: 1px solid var(--vien); }
footer a { color: var(--phu); }
@media (max-width: 520px) { body { font-size: 16px; } h1 { font-size: 28px; } nav a { margin: 0 12px 0 0; } }
