/* Keripax — shared site shell (matches the landing). Clean cream/gold/white. */
:root{
  --bg:#FFFFFF; --cream:#FAF8F3; --cream-2:#F4F0E7; --paper:#FFFFFF;
  --ink:#16140F; --ink-2:#3A372F; --muted:#6E6A60; --muted-2:#A8A294;
  --gold:#C49A3C; --gold-2:#D9B45A; --gold-3:#EBD49E; --gold-deep:#8E6B21;
  --line:rgba(20,16,8,.10); --line-2:rgba(20,16,8,.055);
  --r:16px; --r-lg:24px; --pill:999px;
  --shadow-sm:0 10px 26px -16px rgba(90,68,20,.24);
  --maxw:1460px; --ease:cubic-bezier(.22,.7,.2,1);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;max-width:100%;overflow-x:hidden}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-size:15px;line-height:1.6}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{font-family:"Plus Jakarta Sans","Inter",sans-serif;letter-spacing:-.02em;margin:0;color:var(--ink)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}
@media(max-width:640px){.wrap{padding:0 18px}}
/* keep shell links clean even if a page sets a global underlined <a> style */
.ubar a,.hdr a,.hdr .brand,.catnav a,.cat-explore,.mm a,.foot-links a,.appc-opt{border-bottom:0;text-decoration:none}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:7px;font-weight:600;font-size:13.5px;border-radius:var(--pill);padding:10px 18px;cursor:pointer;border:1px solid transparent;transition:background .2s var(--ease),border-color .2s var(--ease),color .2s var(--ease)}
.btn svg{width:16px;height:16px}
.btn-gold{background:var(--gold);color:#211803}
.btn-gold:hover{background:var(--gold-deep);color:#fff}
.btn-dark{background:var(--ink);color:#fff}
.btn-dark:hover{background:#000}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--gold);color:var(--gold-deep)}
.btn-sm{padding:8px 15px;font-size:13px}

/* utility bar */
.ubar{background:var(--cream);color:var(--ink-2);font-size:12.5px;border-bottom:1px solid var(--line-2)}
.ubar-in{display:flex;align-items:center;gap:20px;height:38px}
.ubar a{color:var(--ink-2);font-weight:600}
.ubar a:hover{color:var(--gold-deep)}
.ubar .u-l{display:flex;align-items:center;gap:8px;color:var(--muted)}
.ubar .u-pill{background:var(--gold);color:#211803;font-weight:700;padding:2px 9px;border-radius:var(--pill);font-size:11px}
.ubar .u-mid{margin:0 auto;display:flex;align-items:center;gap:8px;color:var(--muted)}
.ubar .u-mid svg{color:var(--gold)}
.ubar .u-r{display:flex;align-items:center;gap:18px}
@media(max-width:820px){.ubar .u-mid,.ubar .u-l span.hide-sm{display:none}}

/* header */
.hdr{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line-2)}
.hdr-in{display:flex;align-items:center;gap:22px;height:76px}
.brand{display:flex;align-items:center;gap:10px;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:19px;color:var(--ink);flex-shrink:0}
.brand .mark{width:34px;height:34px;border-radius:10px;background:var(--gold);color:#fff;display:grid;place-items:center;font-size:17px;font-weight:700}
.search{flex:1;max-width:560px;display:flex;align-items:center;gap:10px;background:var(--cream);border:1px solid var(--line);border-radius:var(--pill);padding:0 8px 0 16px;height:48px;transition:border-color .2s,background .2s}
.search:focus-within{border-color:var(--gold);background:#fff}
.search svg{width:19px;height:19px;color:var(--muted);flex-shrink:0}
.search input{flex:1;border:0;background:transparent;font-size:14.5px;color:var(--ink);outline:none;font-family:inherit}
.search .s-go{background:var(--ink);color:#fff;border:0;border-radius:var(--pill);height:36px;padding:0 16px;font-weight:700;font-size:13px;cursor:pointer}
.hdr-cta{display:flex;align-items:center;gap:10px;flex-shrink:0;margin-left:auto}
.hdr .menu-btn{display:none;background:none;border:0;cursor:pointer;color:var(--ink)}
@media(max-width:960px){.search{max-width:none}.hdr-cta .hide-md{display:none}}
@media(max-width:720px){.hdr-in{height:64px;gap:12px}.search{display:none}.hdr .menu-btn{display:grid;place-items:center;width:40px;height:40px}.hdr-cta .btn{padding:9px 14px;font-size:13px}}

/* category nav */
.catnav{background:#fff;border-bottom:1px solid var(--line-2)}
.catnav-in{display:flex;align-items:center;gap:8px;height:56px;overflow-x:auto;scrollbar-width:none}
.catnav-in::-webkit-scrollbar{display:none}
.cat-explore{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:#211803;font-weight:600;font-size:13.5px;padding:9px 15px;border-radius:11px;white-space:nowrap;flex-shrink:0}
.cat-explore svg{width:16px;height:16px}
.cat-links{display:flex;align-items:center;gap:4px;margin-left:6px}
.cat-links a{padding:8px 13px;border-radius:10px;font-size:13.5px;font-weight:600;color:var(--ink-2);white-space:nowrap;transition:background .2s,color .2s}
.cat-links a:hover{background:var(--cream);color:var(--gold-deep)}
.cat-support{margin-left:auto;display:flex;align-items:center;gap:9px;flex-shrink:0;padding-left:14px}
.cat-support .cs-ic{width:34px;height:34px;border-radius:10px;background:var(--cream);display:grid;place-items:center;color:var(--gold-deep)}
.cat-support .cs-ic svg{width:17px;height:17px}
.cat-support b{font-size:13px;color:var(--ink)}
.cat-support small{display:block;font-size:11px;color:var(--muted)}
@media(max-width:720px){.cat-support{display:none}}

/* ── content / prose pages ── */
.page{max-width:820px;margin:0 auto;padding:52px 32px 64px}
@media(max-width:640px){.page{padding:36px 18px 48px}}
.page .eyebrow{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-deep)}
.page h1{font-size:clamp(26px,3vw,36px);font-weight:700;line-height:1.12;margin:8px 0 0}
.page .subtitle,.page .lead{color:var(--muted);font-size:15.5px;line-height:1.65;margin:14px 0 0;max-width:640px}
.page h2{font-size:clamp(18px,2vw,23px);font-weight:700;margin:36px 0 10px}
.page h3,.page h4{font-size:15.5px;font-weight:700;margin:0 0 6px}
.page p{color:var(--ink-2);font-size:14.5px;line-height:1.75;margin:0 0 14px}
.page ul{margin:0 0 16px;padding-left:0;list-style:none;display:grid;gap:10px}
.page ul li{position:relative;padding-left:26px;font-size:14.5px;line-height:1.7;color:var(--ink-2)}
.page ul li::before{content:"";position:absolute;left:0;top:9px;width:14px;height:14px;border-radius:50%;background:var(--gold-light,rgba(196,154,60,.16));border:1.5px solid var(--gold)}
.page ul li strong{color:var(--ink);font-weight:700}
.page a.link{color:var(--gold-deep);font-weight:600}
.page .highlight{background:rgba(196,154,60,.16);color:var(--gold-deep);font-weight:600;padding:1px 6px;border-radius:6px}
.card-soft{background:var(--cream);border:1px solid var(--line-2);border-radius:var(--r-lg);padding:22px 24px;margin:18px 0}
.card-soft p{margin:0}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:16px 0}
@media(max-width:640px){.grid-2{grid-template-columns:1fr}}
.tile{background:#fff;border:1px solid var(--line-2);border-radius:var(--r);padding:20px}
.tile h4{margin:0 0 6px}
.tile p{margin:0;font-size:13.5px;color:var(--muted)}

/* legal pages (privacy / terms / delete-account) reuse .legal-content */
.legal-content{max-width:820px;margin:0 auto;padding:44px 32px 64px}
@media(max-width:640px){.legal-content{padding:32px 18px 48px}}
.legal-content h1{font-size:clamp(24px,3vw,34px);font-weight:700;line-height:1.14;margin:0 0 6px;letter-spacing:-.02em}
.legal-content .date,.legal-content .subtitle{color:var(--muted);font-size:14px;margin:0 0 24px}
.legal-content h2{font-size:clamp(17px,2vw,22px);font-weight:700;margin:30px 0 10px;color:var(--ink)}
.legal-content h3{font-size:15.5px;font-weight:700;margin:20px 0 6px}
.legal-content p{color:var(--ink-2);font-size:14.5px;line-height:1.75;margin:0 0 13px}
.legal-content ul,.legal-content ol{margin:0 0 15px;padding-left:22px}
.legal-content li{color:var(--ink-2);font-size:14.5px;line-height:1.7;margin:0 0 7px}
.legal-content a{color:var(--gold-deep);font-weight:600}
.legal-content strong,.legal-content b{color:var(--ink);font-weight:700}
.legal-content .highlight{background:rgba(196,154,60,.16);color:var(--gold-deep);font-weight:600;padding:1px 6px;border-radius:6px}

/* footer */
footer.foot{background:var(--ink);color:rgba(255,255,255,.72);padding:44px 0 30px;margin-top:20px}
.foot-in{display:flex;flex-wrap:wrap;align-items:center;gap:16px}
footer.foot .brand{color:#fff}
footer.foot .brand .mark{background:var(--gold)}
.foot-links{display:flex;flex-wrap:wrap;gap:18px;margin-left:auto}
.foot-links a{color:rgba(255,255,255,.8);font-size:13.5px;font-weight:600}
.foot-links a:hover{color:var(--gold-3)}
.foot-in .muted{width:100%;font-size:12.5px;color:rgba(255,255,255,.5);border-top:1px solid rgba(255,255,255,.12);padding-top:18px;margin-top:6px}

/* mobile menu */
.mm-back{position:fixed;inset:0;background:rgba(20,16,8,.5);opacity:0;pointer-events:none;transition:opacity .3s;z-index:98}
.mm-back.open{opacity:1;pointer-events:auto}
.mm{position:fixed;top:0;right:-320px;width:300px;max-width:88vw;height:100%;background:#fff;z-index:99;transition:right .32s var(--ease);padding:22px;overflow-y:auto;box-shadow:-20px 0 50px -20px rgba(0,0,0,.4)}
.mm.open{right:0}
.mm .mm-x{background:none;border:0;font-size:28px;color:var(--muted);cursor:pointer;float:right;line-height:1}
.mm a{display:block;padding:13px 4px;font-size:15px;font-weight:600;color:var(--ink);border-bottom:1px solid var(--line-2)}
.mm .mm-cta{margin-top:18px}

/* app chooser modal */
.appc-backdrop{position:fixed;inset:0;background:rgba(20,16,8,.45);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .3s ease;z-index:200}
.appc-backdrop.open{opacity:1;pointer-events:auto}
.appc{position:fixed;left:50%;bottom:-110%;transform:translateX(-50%);width:min(440px,calc(100% - 28px));background:#FFFDF8;border:1px solid rgba(20,16,8,.08);border-radius:24px;box-shadow:0 30px 70px -20px rgba(90,68,20,.4);padding:24px 22px 22px;z-index:201;transition:bottom .38s cubic-bezier(.22,.7,.2,1)}
.appc.open{bottom:22px}
@media(min-width:560px){.appc{top:50%;bottom:auto;transform:translate(-50%,-50%) scale(.96);opacity:0;pointer-events:none;transition:opacity .3s ease,transform .3s ease}.appc.open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}}
.appc h3{margin:0;font-family:"Plus Jakarta Sans","Inter",sans-serif;font-size:19px;font-weight:800;color:#16140F}
.appc .appc-sub{margin:4px 0 16px;font-size:13px;color:#6E6A60}
.appc-x{position:absolute;top:14px;right:16px;background:none;border:0;font-size:26px;line-height:1;color:#A8A294;cursor:pointer}
.appc-opts{display:flex;flex-direction:column;gap:10px}
.appc-opt{display:flex;align-items:center;gap:13px;padding:13px 14px;border-radius:15px;border:1px solid rgba(20,16,8,.1);text-decoration:none;color:#16140F;transition:all .2s ease;background:#fff}
.appc-opt:hover{border-color:#C49A3C;background:rgba(196,154,60,.06);transform:translateY(-1px)}
.appc-ico{width:38px;height:38px;flex-shrink:0;display:grid;place-items:center;border-radius:11px;background:var(--gold);color:#fff}
.appc-ico svg{width:21px;height:21px}
.appc-t{display:flex;flex-direction:column}
.appc-t b{font-size:14.5px;font-weight:700}
.appc-t small{font-size:11.5px;color:#8A8576}
