/* Fileen public site — deliberately the same visual language as the in-app legal
   documents, so a reader who taps through from the app does not feel handed off to
   a different product. One stylesheet, no external requests, no fonts to fetch. */
:root {
  color-scheme: light dark;
  --bg:#F2F4F7; --fg:#262B33; --sec:#5F6874;
  --rule:rgba(23,32,42,.10); --link:#33719B; --eyebrow:#99A1AC;
  --card:#FFFFFF; --accent:#2F6B4F;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg:#16181D; --fg:#ECEEF3; --sec:#A5ACB8;
    --rule:rgba(255,255,255,.10); --link:#8CC3E4; --eyebrow:#6F7683;
    --card:#1D2027; --accent:#7FB79A;
  }
}
* { box-sizing:border-box; -webkit-text-size-adjust:100%; }
body {
  margin:0; background:var(--bg); color:var(--fg);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text",system-ui,"Segoe UI",sans-serif;
  font-size:16px; line-height:1.72; -webkit-font-smoothing:antialiased;
}
body[dir="rtl"] {
  font-family:-apple-system,"SF Arabic","Noto Sans Arabic",Tahoma,sans-serif;
  line-height:1.9;
}
.wrap { width:min(760px, calc(100% - 40px)); margin:0 auto; padding:26px 0 90px; }

/* Header: wordmark left, language switch right — mirrored automatically in RTL
   because it is flex with logical properties, not left/right offsets. */
.top {
  display:flex; align-items:center; gap:14px;
  padding:18px 0; border-bottom:1px solid var(--rule); margin-bottom:8px;
}
.brand { font-size:19px; font-weight:800; letter-spacing:-.02em; color:var(--fg); text-decoration:none; }
body[dir="rtl"] .brand { letter-spacing:0; }
.top nav { margin-inline-start:auto; display:flex; gap:14px; flex-wrap:wrap; }
.top nav a { font-size:14px; color:var(--sec); text-decoration:none; }
.top nav a:hover, .top nav a[aria-current="page"] { color:var(--fg); }

h1 { font-size:26px; font-weight:800; line-height:1.2; letter-spacing:-.02em; margin:30px 0 6px; }
body[dir="rtl"] h1 { letter-spacing:0; line-height:1.4; }
h1:first-of-type { margin-top:18px; }
h2 { font-size:17px; font-weight:700; margin:26px 0 8px; line-height:1.45; }
body[dir="rtl"] h2 { line-height:1.7; }
h3 { font-size:15.5px; font-weight:700; margin:18px 0 6px; }
p { margin:0 0 14px; text-align:start; }
.meta { color:var(--sec); font-size:13px; margin:2px 0 10px; }
a { color:var(--link); text-decoration:none; }
a:hover { text-decoration:underline; }
strong { font-weight:700; } em { color:var(--sec); }
ul,ol { padding-inline-start:22px; margin:0 0 14px; } li { margin:5px 0; }
hr { border:0; border-top:1px solid var(--rule); margin:40px 0; }
hr.docbreak { border-top:6px solid var(--rule); margin:52px 0; }
code { font-family:ui-monospace,SFMono-Regular,monospace; background:var(--rule); padding:1px 5px; border-radius:5px; font-size:13.5px; }

.card {
  background:var(--card); border:1px solid var(--rule); border-radius:14px;
  padding:18px 20px; margin:0 0 16px;
}
.card h2 { margin-top:0; }
.lede { font-size:17px; color:var(--sec); margin:0 0 22px; }
.contact { font-size:17px; font-weight:600; }
footer {
  margin-top:56px; padding-top:20px; border-top:1px solid var(--rule);
  color:var(--sec); font-size:13.5px;
}
footer a { color:var(--sec); }

@media (max-width:520px) {
  body { font-size:15.5px; }
  h1 { font-size:23px; }
  .top { flex-wrap:wrap; gap:8px; }
  .top nav { margin-inline-start:0; width:100%; }
}
