/* Layout: single RTL column over a night grid with drifting glows; hash-routed pages: home / privacy / terms */
:root{
  --ink:#060b17;
  --deep:#0c1629;
  --line:rgba(120,170,255,.12);
  --fg:#e9eefb;
  --muted:#8e9cba;
  --sky:#3b9dff;
  --aqua:#25d0c3;
  --gold:#f3c56b;
  --bad:#ff7a7a;
  --display:"Reem Kufi","Readex Pro",Tahoma,sans-serif;
  --script:"Aref Ruqaa","Reem Kufi",serif;
  --body:"Readex Pro",Tahoma,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,Consolas,monospace;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--ink);color:var(--fg);font-family:var(--body);font-size:16px;line-height:1.8;margin:0;padding-inline:16px;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:64px 64px;
  mask-image:radial-gradient(ellipse 80% 70% at 50% 25%,#000 30%,transparent 85%);
  -webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 25%,#000 30%,transparent 85%)}
.glow{position:fixed;border-radius:50%;filter:blur(100px);pointer-events:none;z-index:0;opacity:.5}
.g1{width:440px;height:440px;background:#1d4fd8;top:-140px;left:-140px;animation:drift 18s ease-in-out infinite alternate}
.g2{width:400px;height:400px;background:#0f8f88;bottom:-160px;right:-120px;animation:drift 22s ease-in-out infinite alternate-reverse}
@keyframes drift{to{transform:translate(60px,40px) scale(1.1)}}
.wrap{position:relative;z-index:1;max-width:1080px;margin-inline:auto}
a{color:inherit}
:focus-visible{outline:2px solid var(--sky);outline-offset:3px;border-radius:8px}

/* header */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:14px;margin-inline:-16px;padding-inline:16px;background:rgba(6,11,23,.72);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--display);font-weight:700;font-size:1.2rem}
.logo{width:38px;height:38px;flex:none}
nav{display:flex;gap:20px;font-size:.92rem;color:var(--muted)}
nav a{text-decoration:none}
nav a:hover{color:var(--fg)}
.hbtn{text-decoration:none;font-size:.88rem;font-weight:600;padding:8px 16px;border-radius:12px;background:rgba(59,157,255,.14);border:1px solid rgba(59,157,255,.45)}

/* hero */
.hero{text-align:center;padding-block:64px 40px;display:flex;flex-direction:column;align-items:center;gap:22px}
.badge{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;color:var(--muted);background:rgba(255,255,255,.03);border:1px solid var(--line);border-radius:99px;padding:5px 14px}
.badge svg{width:16px;height:16px;color:var(--aqua)}
h1{margin:0;font-family:var(--display);font-weight:700;font-size:clamp(2.1rem,6vw,4rem);line-height:1.3;text-wrap:balance}
h1 .grad{background:linear-gradient(90deg,var(--aqua),var(--sky) 60%,#8ab8ff);-webkit-background-clip:text;background-clip:text;color:transparent}
h1 .script{display:block;font-family:var(--script);font-size:.8em;text-shadow:0 0 30px rgba(59,157,255,.45)}
.lead{max-width:58ch;margin:0;color:var(--muted);font-size:1.06rem}
.lead b{color:var(--fg);font-weight:600}
.ctas{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font:inherit;font-weight:600;font-size:1rem;padding:13px 24px;border-radius:14px;border:1px solid var(--line);cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s;color:var(--fg);background:rgba(255,255,255,.03)}
.btn:hover{background:rgba(255,255,255,.07)}
.btn.primary{background:linear-gradient(90deg,#1e6fe0,var(--sky));color:#fff;border-color:transparent;box-shadow:0 10px 30px -8px rgba(59,157,255,.6)}
.btn.primary:hover{transform:translateY(-2px);box-shadow:0 16px 40px -8px rgba(59,157,255,.75)}
.btn svg{width:18px;height:18px}
.chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;font-family:var(--mono);font-size:.74rem;color:var(--muted)}
.chips span{border:1px solid var(--line);border-radius:8px;padding:3px 10px;direction:ltr}

/* app orbit */
.orbit{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:6px}
.orbit .ai{width:64px;height:64px;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px -10px rgba(0,0,0,.8),0 0 0 1px var(--line);animation:float 6s ease-in-out infinite}
.orbit .ai:nth-child(2){animation-delay:-1.2s}.orbit .ai:nth-child(3){animation-delay:-2.4s}.orbit .ai:nth-child(4){animation-delay:-3.6s}.orbit .ai:nth-child(5){animation-delay:-4.8s}
@keyframes float{50%{transform:translateY(-8px)}}

section{padding-block:60px}
.eyebrow{font-family:var(--mono);font-size:.72rem;letter-spacing:.25em;color:var(--sky);text-transform:uppercase}
h2{font-family:var(--display);font-size:clamp(1.6rem,4vw,2.4rem);margin:8px 0 10px;line-height:1.35;text-wrap:balance}
.sub{color:var(--muted);margin:0;max-width:62ch}
.head{text-align:center;display:flex;flex-direction:column;align-items:center;margin-bottom:34px}

/* about */
.about{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:stretch}
.about .txt{min-width:0}
.about .txt h2{margin-top:6px}
.about .txt p{color:var(--muted);margin:0 0 12px}
.license{border-radius:22px;padding:24px;background:linear-gradient(160deg,rgba(37,208,195,.12),rgba(59,157,255,.06));border:1px solid rgba(37,208,195,.3);display:flex;flex-direction:column;gap:14px;min-width:0}
.license .seal{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(37,208,195,.15);color:var(--aqua)}
.license .seal svg{width:28px;height:28px}
.license h3{margin:0;font-family:var(--display);font-size:1.2rem}
.license ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.license li{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:.95rem}
.license li::before{content:"";flex:none;width:8px;height:8px;margin-top:.7em;border-radius:50%;background:var(--aqua)}

/* services */
.services{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.card{background:rgba(17,32,62,.45);border:1px solid var(--line);border-radius:20px;padding:22px;transition:transform .25s,border-color .25s;min-width:0}
.card:hover{transform:translateY(-4px);border-color:rgba(59,157,255,.4)}
.card .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(59,157,255,.1);color:var(--sky);margin-bottom:14px}
.card .ic svg{width:22px;height:22px}
.card h3{margin:0 0 6px;font-family:var(--display);font-size:1.1rem}
.card p{margin:0;color:var(--muted);font-size:.92rem}

/* vision */
.vision{border-radius:28px;padding:44px clamp(20px,5vw,56px);background:radial-gradient(ellipse at 80% 0%,rgba(37,208,195,.18),transparent 60%),radial-gradient(ellipse at 10% 100%,rgba(59,157,255,.2),transparent 60%),linear-gradient(180deg,#0e1d3a,#091327);border:1px solid rgba(59,157,255,.22);display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}
.vision blockquote{margin:0;font-family:var(--script);font-size:clamp(1.6rem,3.6vw,2.4rem);line-height:1.6;text-wrap:balance}
.vision blockquote span{color:var(--aqua)}
.pillars{display:flex;flex-direction:column;gap:16px;min-width:0}
.pillar{display:flex;gap:14px;align-items:flex-start}
.pillar .k{flex:none;font-family:var(--mono);font-weight:700;font-size:.8rem;color:var(--ink);background:var(--aqua);border-radius:8px;padding:2px 8px;margin-top:4px}
.pillar.ai .k{background:var(--sky)}
.pillar.hm .k{background:var(--gold)}
.pillar h3{margin:0;font-family:var(--display);font-size:1.08rem}
.pillar p{margin:2px 0 0;color:var(--muted);font-size:.93rem}

/* portfolio */
.apps{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.app{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:24px 16px 18px;border-radius:22px;background:rgba(11,20,38,.65);border:1px solid var(--line);transition:transform .25s,border-color .25s;min-width:0}
.app:hover{transform:translateY(-5px);border-color:rgba(59,157,255,.45)}
.app .icon{width:88px;height:88px;border-radius:22px;overflow:hidden;box-shadow:0 16px 34px -12px rgba(0,0,0,.9),0 0 0 1px rgba(255,255,255,.06)}
.app .icon,.orbit .ai{background:#fff}
.app .icon img,.app .icon svg,.orbit .ai img{width:100%;height:100%;display:block;object-fit:contain}
.app h3{margin:4px 0 0;font-family:var(--display);font-size:1.15rem}
.app .cat{font-size:.82rem;color:var(--muted)}
.app p{margin:0;color:var(--muted);font-size:.88rem;flex:1}
.store{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:.82rem;font-weight:600;padding:7px 14px;border-radius:10px;background:#fff;color:#0a0f1c;direction:ltr}
.store svg{width:15px;height:15px}
.store.off{background:transparent;color:var(--muted);border:1px dashed var(--line);cursor:default}

/* process */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:s}
.steps li{padding:22px;border-radius:20px;border:1px solid var(--line);background:rgba(11,20,38,.6);counter-increment:s;min-width:0}
.steps li::before{content:counter(s);font-family:var(--mono);font-weight:700;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(37,208,195,.5);color:var(--aqua);margin-bottom:12px}
.steps h3{margin:0 0 6px;font-family:var(--display);font-size:1.05rem}
.steps p{margin:0;color:var(--muted);font-size:.9rem}

/* contact */
.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:22px}
.cinfo{display:flex;flex-direction:column;gap:14px;min-width:0}
.cinfo h2{margin-top:6px}
.cinfo p{margin:0;color:var(--muted)}
.crow{display:flex;align-items:center;gap:12px;padding:14px;border-radius:16px;border:1px solid var(--line);background:rgba(11,20,38,.6)}
.crow .ic{width:40px;height:40px;flex:none;border-radius:12px;display:grid;place-items:center;background:rgba(59,157,255,.1);color:var(--sky)}
.crow .ic svg{width:20px;height:20px}
.crow small{display:block;color:var(--muted);font-size:.78rem}
.crow b{font-family:var(--mono);font-weight:500;direction:ltr;display:inline-block;user-select:all;overflow-wrap:anywhere}
form{border-radius:24px;padding:24px;background:linear-gradient(180deg,rgba(17,32,62,.75),rgba(11,20,38,.75));border:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:14px;min-width:0}
.f{display:flex;flex-direction:column;gap:6px;min-width:0}
.f.full{grid-column:1/-1}
label{font-size:.88rem;color:var(--muted)}
input,select,textarea{font:inherit;color:var(--fg);background:rgba(6,11,23,.7);border:1px solid var(--line);border-radius:12px;padding:11px 14px;width:100%;transition:border-color .2s}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--sky);box-shadow:0 0 0 3px rgba(59,157,255,.18)}
textarea{min-height:130px;resize:vertical}
.err{color:var(--bad);font-size:.8rem;min-height:1em}
.formfoot{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.formfoot small{color:var(--muted);font-size:.8rem;max-width:42ch}
.formfoot small a{color:var(--sky)}
.status{grid-column:1/-1;border-radius:12px;padding:12px 14px;font-size:.92rem}
.status.ok{background:rgba(37,208,195,.1);border:1px solid rgba(37,208,195,.4)}
.status.warn{background:rgba(243,197,107,.08);border:1px solid rgba(243,197,107,.4)}

/* legal pages */
.legal{max-width:780px;margin-inline:auto;padding-block:48px 30px}
.legal .back{display:inline-flex;align-items:center;gap:6px;color:var(--muted);text-decoration:none;font-size:.9rem;margin-bottom:18px}
.legal .back:hover{color:var(--fg)}
.legal h1{font-size:clamp(1.9rem,5vw,2.8rem);text-align:start}
.legal .upd{font-family:var(--mono);font-size:.78rem;color:var(--muted)}
.legal h2{font-size:1.3rem;margin:32px 0 8px;display:flex;gap:10px;align-items:baseline}
.legal h2 span{font-family:var(--mono);font-size:.8rem;color:var(--sky)}
.legal p,.legal li{color:#c3cde2}
.legal ul{padding-inline-start:20px;margin:0}
.legal li{margin-bottom:6px}
.legal .box{margin-top:20px;border-radius:16px;padding:16px 18px;border:1px solid var(--line);background:rgba(11,20,38,.6)}

footer{border-top:1px solid var(--line);margin-top:40px;padding-block:30px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.88rem}
footer .links{display:flex;gap:18px;flex-wrap:wrap}
footer .links a{text-decoration:none}
footer .links a:hover{color:var(--fg)}
footer small{font-family:var(--mono);font-size:.7rem;letter-spacing:.12em;direction:ltr}

.toast{position:fixed;bottom:calc(20px + env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%,20px);opacity:0;background:var(--deep);border:1px solid rgba(37,208,195,.5);padding:10px 18px;border-radius:12px;z-index:9;transition:.3s;font-size:.9rem;pointer-events:none}
.toast.show{opacity:1;transform:translate(-50%,0)}

.rise{animation:rise .8s ease both}
.rise:nth-child(2){animation-delay:.07s}.rise:nth-child(3){animation-delay:.14s}.rise:nth-child(4){animation-delay:.21s}.rise:nth-child(5){animation-delay:.28s}
@keyframes rise{from{transform:translateY(14px)}to{transform:none}}

@media (max-width:900px){
  .services,.steps{grid-template-columns:1fr 1fr}
  .about,.vision,.contact{grid-template-columns:1fr}
  nav{display:none}
}
@media (max-width:540px){
  .services,.steps{grid-template-columns:1fr}
  form{grid-template-columns:1fr}
  .hbtn{display:none}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
