:root{--red:#7A0000;--red2:#B3121A;--gold:#D4AF37;--ink:#2A1A14;--muted:#7A6A5A;--bg:#FBF3E3;--card:#FFFDF8;--line:rgba(212,175,55,.35)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.85 'Noto Sans Khmer',Inter,system-ui,sans-serif}
a{color:var(--red2)}img{max-width:100%;height:auto;display:block}
.top{position:sticky;top:0;z-index:5;background:linear-gradient(90deg,#5A0505,#7A0000);border-bottom:2px solid #E9C766}
.top .w{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px}
.brand{display:flex;align-items:center;gap:10px;color:#FFE9A8;text-decoration:none;font:700 24px/1 'Playfair Display',Georgia,serif}.brand img{width:40px;height:40px}
.cta{padding:9px 18px;border-radius:999px;background:linear-gradient(180deg,#FBEFB8,#E9C95E);color:#5A0000;font-weight:700;text-decoration:none;white-space:nowrap}
.w{max-width:860px;margin:0 auto}.main{padding:26px 16px 50px}
.crumb{font-size:14px;color:var(--muted)}.crumb a{color:var(--muted)}
h1{margin:10px 0 6px;font:400 34px/1.6 'Moul','Noto Serif Khmer',serif;color:var(--red)}h2{margin:30px 0 6px;font:700 24px/1.6 'Noto Serif Khmer',serif;color:var(--red)}
.meta{font-size:14px;color:var(--muted)}.lead{font-size:19px;color:#4A3A2A}.en{font:500 15px/1.6 Inter,sans-serif;color:var(--muted);font-style:italic}
.hero{max-width:540px;margin:18px auto 8px;border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:0 10px 28px rgba(90,0,0,.15)}
ul{padding-left:24px}li{margin:4px 0}
.box{margin:34px 0 0;padding:22px;border-radius:18px;background:linear-gradient(135deg,#7A0000,#4A0606);color:#FFF6E0;text-align:center}
.box b{display:block;font:400 24px/1.6 'Moul',serif;color:#FFE08A}.box p{margin:6px 0 14px}
.rel{margin-top:34px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.card{display:block;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 4px 14px rgba(90,0,0,.08)}
.card img{aspect-ratio:4/5;object-fit:cover;width:100%}.card div{padding:12px 14px}.card b{display:block;font:700 17px/1.6 'Noto Serif Khmer',serif;color:var(--red)}.card small{color:var(--muted);font-size:14px;line-height:1.6;display:block}
.foot{border-top:1px solid var(--line);padding:22px 16px;text-align:center;color:var(--muted);font-size:14px}
@media(max-width:560px){h1{font-size:26px}body{font-size:16px}}