/* صحصح — static pages on speacetech.com/sahsah/ (privacy, support, marketing).
   Tokens copied from docs/design/handoff/tokens.css (direction 1A «جمر»): dark first, light twin.
   Logical properties only. Never add spacing between letters (it breaks Arabic joining). No scripts on any page. */

@font-face{font-family:"IBM Plex Sans Arabic";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-sans-arabic-arabic-400-normal.woff2") format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"IBM Plex Sans Arabic";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/ibm-plex-sans-arabic-arabic-600-normal.woff2") format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"IBM Plex Sans Arabic";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/ibm-plex-sans-arabic-arabic-700-normal.woff2") format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}
@font-face{font-family:"IBM Plex Sans Arabic";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/ibm-plex-sans-arabic-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans Arabic";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/ibm-plex-sans-arabic-latin-600-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Sans Arabic";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/ibm-plex-sans-arabic-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  color-scheme:dark;
  --bg:#0E0C0A;
  --surface:#1A1714;
  --surface-elevated:#262220;
  --border:rgba(255,255,255,.08);
  --text-primary:#F4F1EC;
  --text-secondary:#ADA79E;
  --accent-wake:#F5B324;
  --accent-wake-muted:#3A2E12;
  --on-accent:#15110E;
  --danger:#FF5C5C;
  --link-line:var(--accent-wake);
  --font:"IBM Plex Sans Arabic",system-ui,sans-serif;
  --fs-h1:28px;--fs-h2:20px;--fs-body:17px;--fs-caption:14px;
  --radius-lg:20px;--radius-xl:24px;
  --space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--space-8:48px;
}
@media (prefers-color-scheme:light){
  :root{
    color-scheme:light;
    --bg:#EFEAE0;
    --surface:#FFFFFF;
    --surface-elevated:#FFFFFF;
    --border:rgba(28,24,20,.10);
    --text-primary:#1C1814;
    --text-secondary:#6B655C;
    --accent-wake-muted:#FBE9BF;
    --danger:#C0271C;
    /* In light the accent is a fill only (1.5:1 on paper) — never text or a bare line. */
    --link-line:var(--text-primary);
  }
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text-primary);font-family:var(--font);font-size:var(--fs-body);line-height:1.7}
.wrap{max-inline-size:760px;margin-inline:auto;padding-inline:var(--space-5);padding-block:var(--space-7) var(--space-8)}

.site-head{display:flex;align-items:center;gap:var(--space-3);margin-block-end:var(--space-7)}
.site-head img{inline-size:48px;block-size:48px;border-radius:12px}
.site-head .brand{font-weight:700;font-size:var(--fs-h2);color:var(--text-primary);text-decoration:none}
.site-head nav{margin-inline-start:auto;display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:var(--fs-caption)}

h1{font-size:var(--fs-h1);line-height:1.35;font-weight:700;margin-block:0 var(--space-3)}
h2{font-size:var(--fs-h2);line-height:1.4;font-weight:600;margin-block:var(--space-7) var(--space-3)}
h3{font-size:var(--fs-body);font-weight:600;margin-block:var(--space-5) var(--space-2)}
p,ul,ol,table{margin-block:0 var(--space-4)}
ul,ol{padding-inline-start:var(--space-6)}
li{margin-block-end:var(--space-2)}
.meta{color:var(--text-secondary);font-size:var(--fs-caption);margin-block-end:var(--space-6)}

a{color:var(--text-primary);text-decoration:underline;text-decoration-color:var(--link-line);text-decoration-thickness:2px;text-underline-offset:4px}
a:focus-visible{outline:3px solid var(--accent-wake);outline-offset:3px;border-radius:4px}
.site-head nav a,.site-foot a{display:inline-block;min-block-size:44px;padding-block:10px}

.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-6);margin-block:var(--space-5)}
.card > :first-child{margin-block-start:0}
.card > :last-child{margin-block-end:0}
.summary li{margin-block-end:var(--space-3)}

.table-wrap{overflow-x:auto;margin-block-end:var(--space-4)}
table{border-collapse:collapse;inline-size:100%;font-size:var(--fs-caption)}
th,td{text-align:start;vertical-align:top;padding:var(--space-3);border-block-end:1px solid var(--border)}
th{font-weight:600;color:var(--text-secondary)}

.ltr{direction:ltr;unicode-bidi:isolate}
bdi{unicode-bidi:isolate}

.hero{padding-block:var(--space-6) var(--space-5)}
.hero .lines{color:var(--text-secondary);font-size:var(--fs-h2);line-height:1.6;margin-block-end:var(--space-4)}
.hero .owl{inline-size:120px;block-size:120px;display:block;margin-block-end:var(--space-4)}
.pill{display:inline-block;background:var(--accent-wake);color:var(--on-accent);font-weight:600;border-radius:999px;padding:var(--space-2) var(--space-5)}


.site-foot{margin-block-start:var(--space-8);padding-block-start:var(--space-5);border-block-start:1px solid var(--border);color:var(--text-secondary);font-size:var(--fs-caption)}
.site-foot p{margin-block-end:var(--space-2)}
.site-foot nav{display:flex;flex-wrap:wrap;gap:var(--space-4)}

section[lang="en"]{margin-block-start:var(--space-8);padding-block-start:var(--space-5);border-block-start:1px solid var(--border)}
