/* chanthkal.com — public pages (home, privacy, support, delete account).
   Colours are the app's accepted screen tokens (UX handoff v26.2 §3). */
:root{
  --paper:#f0e8d7;--sheet:#fffdf6;--soft:#f8f1e2;
  --ink:#302e25;--ink2:#625b4b;--muted:#746d5d;
  --green:#26503F;--burgundy:#852b32;--gold:#a77b26;
  --rule:rgba(167,123,38,.35);
  --f-kh:'Kantumruy Pro','Instrument Sans',system-ui,sans-serif;
  --f-en:'Instrument Sans','Kantumruy Pro',system-ui,sans-serif;
  --f-mark:Georgia,'Times New Roman',serif;
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#191c19;--sheet:#232923;--soft:#2b3027;
  --ink:#f3ead7;--ink2:#c6bfae;--muted:#a9a290;
  --green:#8fc0a6;--burgundy:#e19aa0;--gold:#d9b75f;--rule:rgba(217,183,95,.3);
}}
:root[data-theme="dark"]{
  --paper:#191c19;--sheet:#232923;--soft:#2b3027;
  --ink:#f3ead7;--ink2:#c6bfae;--muted:#a9a290;
  --green:#8fc0a6;--burgundy:#e19aa0;--gold:#d9b75f;--rule:rgba(217,183,95,.3);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--f-kh)}
html[lang="en"] body{font-family:var(--f-en);line-height:1.6}
/* one page, two languages: only the chosen one shows */
html[lang="km"] [lang="en"]:not(html),html[lang="en"] [lang="km"]:not(html){display:none!important}
a{color:var(--green);text-underline-offset:3px}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}
img{max-width:100%;display:block}

.top{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:960px;margin:0 auto;padding:12px 16px}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;min-width:0}
.brand img{width:36px;height:36px;border-radius:9px}
.brand b{font:700 1.15rem/1.1 var(--f-mark);letter-spacing:-.02em}
.brand small{display:block;font:500 .78rem/1.3 var(--f-kh);color:var(--ink2)}
.lang{border:1px solid var(--rule);background:var(--sheet);color:var(--ink);border-radius:999px;padding:6px 14px;font:600 .9rem/1 var(--f-en);cursor:pointer;min-height:36px}

.hero{position:relative;max-width:960px;margin:0 auto;border-radius:0 0 18px 18px;overflow:hidden;min-height:240px;display:grid;align-items:end;background:#1b2a24}
.hero img.scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .over{position:relative;padding:40px 20px 24px;background:linear-gradient(to top,rgba(15,20,17,.92) 0%,rgba(15,20,17,.78) 55%,rgba(15,20,17,.25) 100%);color:#fdf6e6}
.hero h1,.hero p{text-shadow:0 1px 3px rgba(0,0,0,.6)}
.hero h1{margin:0;font:700 clamp(1.7rem,6vw,2.4rem)/1.25 var(--f-kh)}
.hero h1 .mark{font-family:var(--f-mark);letter-spacing:-.02em}
.hero p{margin:6px 0 16px;color:#eadfc6;max-width:36em}
.cta{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border-radius:12px;background:var(--gold);color:#1d1a12;font-weight:700;text-decoration:none}
.soon{font-size:.9rem;color:#eadfc6;border:1px solid rgba(234,223,198,.4);border-radius:12px;padding:8px 12px}

main{max-width:960px;margin:0 auto;padding:8px 16px 40px}
section{margin-top:28px}
h2{font:700 1.3rem/1.4 var(--f-kh);margin:0 0 12px;color:var(--ink);display:flex;align-items:center;gap:10px}
h2::before{content:"";width:18px;height:2px;background:var(--gold)}
h3{font:700 1.05rem/1.4 var(--f-kh);margin:0 0 4px;color:var(--green)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
.card{background:var(--sheet);border:1px solid var(--rule);border-radius:14px;padding:16px;min-width:0}
.card p{margin:0;color:var(--ink2)}
.steps{margin:0;padding-left:1.3em;color:var(--ink2)}

.doc{background:var(--sheet);border:1px solid var(--rule);border-radius:14px;padding:20px clamp(16px,4vw,32px);margin-top:16px}
.doc h1{font:700 1.6rem/1.35 var(--f-kh);margin:0 0 4px}
.doc .date{color:var(--muted);margin:0 0 8px;font-size:.9rem}
.doc h2{margin-top:24px;font-size:1.1rem}
.doc p,.doc li{color:var(--ink2);max-width:42em}
.note{background:var(--soft);border-left:3px solid var(--burgundy);border-radius:8px;padding:10px 14px;color:var(--ink)}
.mail{font-weight:700;overflow-wrap:anywhere}

footer{border-top:1px solid var(--rule);max-width:960px;margin:0 auto;padding:16px 16px 32px;display:flex;flex-wrap:wrap;gap:8px 18px;color:var(--muted);font-size:.9rem}
footer a{color:var(--ink2)}
