@font-face{font-family:Alexandria;font-weight:300;font-display:swap;src:url(fonts/alexandria-arabic-300-normal.woff2) format("woff2")}
@font-face{font-family:Alexandria;font-weight:500;font-display:swap;src:url(fonts/alexandria-arabic-500-normal.woff2) format("woff2")}
@font-face{font-family:Alexandria;font-weight:700;font-display:swap;src:url(fonts/alexandria-arabic-700-normal.woff2) format("woff2")}
@font-face{font-family:Plex;font-weight:400;font-display:swap;src:url(fonts/ibm-plex-sans-arabic-arabic-400-normal.woff2) format("woff2")}
@font-face{font-family:Plex;font-weight:500;font-display:swap;src:url(fonts/ibm-plex-sans-arabic-arabic-500-normal.woff2) format("woff2")}
@font-face{font-family:Plex;font-weight:600;font-display:swap;src:url(fonts/ibm-plex-sans-arabic-arabic-600-normal.woff2) format("woff2")}

:root{--bg:#050505;--text:#f5f5f5;--muted:#9a9a9a;--soft:#c8c8c8;--line:rgba(255,255,255,.16)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-snap-type:y proximity;background:var(--bg);overflow-x:clip}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.75 Plex,system-ui,-apple-system,"Segoe UI",Tahoma,sans-serif;overflow-x:hidden}
a{color:inherit}
h1,h2,h3{font-family:Alexandria,Plex,sans-serif;color:#fff;margin:0;text-wrap:balance}
h1{font-weight:700;font-size:clamp(36px,4.3vw,64px);line-height:1.3}
h2{font-weight:700;font-size:clamp(32px,4.2vw,58px);line-height:1.3}
.light{font-weight:300}
.kicker{margin:0;font-size:14px;color:var(--muted)}
.lead{margin:0;text-wrap:pretty;font-size:clamp(17px,1.5vw,20px);color:var(--soft);max-width:560px}
.lead.strong{color:#dadada;font-size:clamp(18px,1.7vw,22px)}
.muted{color:var(--muted)}
main{position:relative;z-index:1}

/* sky */
.sky{position:fixed;inset:0;pointer-events:none;z-index:0}
.star{position:absolute;border-radius:50%;background:#fff;animation:twinkle ease-in-out infinite}
.shoot{position:absolute;top:14%;left:78%;width:120px;height:1px;background:#fff;opacity:0;animation:shoot 11s ease-out infinite}

/* side nav */
.side{position:fixed;left:22px;top:50%;transform:translateY(-50%);z-index:5;display:flex;flex-direction:column;gap:18px;padding:14px 8px;border-left:1px solid rgba(255,255,255,.14)}
.side a{display:block;width:10px;height:10px;border-radius:50%;border:1px solid rgba(255,255,255,.6)}
.side a:hover,.side a.on{background:#fff}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 28px;border-radius:999px;font:inherit;font-size:17px;text-decoration:none;cursor:pointer;border:1px solid transparent}
.btn.solid{background:#fff;color:#050505;font-weight:600}
.btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.btn.ghost:hover{background:rgba(255,255,255,.08)}
.btn.sm{min-height:44px;padding:10px 22px;font-size:16px}
.btn.lg{min-height:54px;padding:15px 36px;font-size:18px}
.btn.glow{box-shadow:0 0 40px rgba(255,255,255,.25)}
.btn:focus-visible,.side a:focus-visible,.x:focus-visible{outline:2px solid #fff;outline-offset:3px}
.actions{display:flex;flex-wrap:wrap;gap:12px}

/* screens */
.screen{position:relative;overflow-x:clip;min-height:100vh;min-height:100svh;padding:56px 24px;scroll-snap-align:start;display:flex;flex-direction:column}
.screen.center,.center{align-items:center;justify-content:center;text-align:center;gap:20px}
.screen.center>.btn{margin-top:12px}

/* hero */
.hero{padding:24px 24px 28px}
.bar{width:100%;max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Alexandria,sans-serif;font-size:22px;font-weight:700}
.hero-body{flex:1;width:100%;max-width:1240px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:32px 48px;padding-top:24px}
.hero-text{flex:1 1 min(480px,100%);min-width:0;display:flex;flex-direction:column;gap:22px}
.system{flex:1 1 min(380px,100%);min-width:0;position:relative;width:min(100%,560px);max-width:560px;aspect-ratio:1/1;margin:0 auto}
.tilt{position:absolute;inset:0;transform:rotateX(64deg) rotateZ(-18deg);transform-style:preserve-3d}
.ring{position:absolute;top:50%;left:50%;border:1px solid var(--line);border-radius:50%}
.ring>i{position:absolute;top:-5px;left:50%;width:9px;height:9px;margin-left:-4.5px;border-radius:50%;background:#fff;box-shadow:0 0 12px 2px rgba(255,255,255,.6)}
.r1{width:98%;height:98%;margin:-49% 0 0 -49%;animation:spin 70s linear infinite}
.r2{width:80%;height:80%;margin:-40% 0 0 -40%;border-style:dashed;animation:spinr 48s linear infinite}
.r2>i{width:6px;height:6px;margin-left:-3px;top:-3px}
.r3{width:62%;height:62%;margin:-31% 0 0 -31%;animation:spin 30s linear infinite}
.r4{width:46%;height:46%;margin:-23% 0 0 -23%;border-color:rgba(255,255,255,.08);animation:spinr 22s linear infinite}
.r4>i{width:5px;height:5px;margin-left:-2.5px;top:-2.5px;opacity:.7}
.sun{position:absolute;top:50%;left:50%;width:30%;height:30%;margin:-15% 0 0 -15%}
.sun>div{position:absolute;border-radius:50%}
.corona{inset:-18%;box-shadow:0 0 70px 18px rgba(255,255,255,.35);animation:corona 14s ease-in-out infinite}
.disc{inset:0;background:#fff}
.moon{inset:-1%;background:var(--bg);animation:eclipse 14s ease-in-out infinite alternate}
.cue{align-self:center;color:var(--muted);margin-top:8px}
.cue svg{animation:cue 2.4s ease-in-out infinite}

/* day */
.phases{position:relative;width:100%;max-width:820px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;padding-top:70px;margin-top:20px}
.arc{position:absolute;left:0;right:0;top:50px;width:100%;height:120px}
.phase{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;font-family:Alexandria,sans-serif;font-weight:500;font-size:clamp(18px,2vw,24px);color:#fff}
.phase svg{width:76px;height:76px;animation:glow 6s ease-in-out infinite}
.phase.up{transform:translateY(-54px)}
.phase.up svg{animation-delay:2s}
.phase:last-child svg{animation-delay:4s}

/* spirit */
.split{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:40px 56px;max-width:1288px;margin:0 auto}
.split-text{flex:1 1 min(340px,100%);min-width:0;display:flex;flex-direction:column;gap:22px}
.dots{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px;font-size:18px;color:#dadada}
.dots li{display:flex;gap:12px;align-items:center}
.dots li::before{content:"";width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 10px 2px rgba(255,255,255,.6);flex:0 0 auto}
.shots{flex:1.6 1 min(520px,100%);min-width:0;position:relative;padding-bottom:6%}
.shots figure{margin:0;overflow:hidden;animation:float 9s ease-in-out infinite}
.shots img{display:block;width:100%;height:auto}
.desk{width:88%;border-radius:16px;border:1px solid rgba(255,255,255,.2);box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 60px rgba(255,255,255,.06)}
.phone{position:absolute;left:0;bottom:0;width:24%;border:5px solid #1c1c1c;border-radius:26px;box-shadow:0 24px 60px rgba(0,0,0,.7);animation-delay:-4s!important}

/* pages orbit */
.orbit{position:relative;width:min(78vw,50vh,560px);aspect-ratio:1/1;margin:28px 0 8px}
.mini-sun{position:absolute;top:50%;left:50%;width:12%;height:12%;margin:-6% 0 0 -6%}
.mini-sun div{position:absolute;inset:0;border-radius:50%;background:#fff;box-shadow:0 0 40px 8px rgba(255,255,255,.35)}
.mini-sun div+div{inset:-1%;background:var(--bg);box-shadow:none;transform:translate(18%,-12%)}
.orb{position:absolute;inset:0;transform:rotate(var(--a))}
.orb>b{position:absolute;top:0;left:50%;width:0;height:0;transform:rotate(calc(var(--a) * -1))}
.orb>b>i{position:absolute;top:0;left:0;width:0;height:0}
.planet{position:absolute;top:0;left:0;transform:translate(-50%,-50%);width:clamp(34px,4vw,46px);height:clamp(34px,4vw,46px);border-radius:50%;background:var(--bg);border:1px solid rgba(255,255,255,.35);display:flex;align-items:center;justify-content:center;box-shadow:0 0 22px rgba(255,255,255,.12)}
.planet svg{width:55%;height:55%}
.words{position:absolute;top:59%;left:0;right:0;height:2em;margin:0;font-family:Alexandria,sans-serif;font-weight:300;font-size:clamp(15px,1.6vw,20px);color:#fff}
.words span{position:absolute;inset:0;text-align:center;opacity:0;animation:word 21s ease-in-out infinite}

/* privacy */
.eclipse{width:clamp(120px,16vw,190px);aspect-ratio:1/1;border-radius:50%;background:var(--bg);animation:pulse 7s ease-in-out infinite;margin-bottom:20px}

/* trial */
.trial{padding-bottom:calc(24px + env(safe-area-inset-bottom))}
.trial .grow{gap:26px}
.trial .lead.strong{line-height:2}
.grow{flex:1;display:flex;flex-direction:column}
.float{animation:float 6s ease-in-out infinite}
footer{text-align:center;width:100%;max-width:1240px;margin:0 auto;border-top:1px solid rgba(255,255,255,.1);padding-top:18px;font-size:13px;color:#8a8a8a}

/* panel */
.overlay{position:fixed;inset:0;z-index:20;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;padding:20px}
.overlay[hidden]{display:none}
.card{width:100%;max-width:600px;max-height:88vh;overflow-y:auto;background:#0b0b0b;border:1px solid rgba(255,255,255,.14);border-radius:28px;padding:36px 40px 40px;animation:in .35s ease-out;outline:none}
.card.wide{max-width:760px}
.card-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px}
.card-head h3{font-size:24px;font-weight:500}
.x{background:transparent;border:0;color:var(--muted);width:44px;height:44px;border-radius:50%;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
.x:hover{color:#fff;background:rgba(255,255,255,.08)}
.card-img{margin:0 0 28px;border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:#fff}
.card-img img{display:block;width:100%;height:auto}
.rows{margin:0}
.rows div{display:flex;gap:20px;align-items:baseline;padding:14px 0;border-top:1px solid rgba(255,255,255,.08)}
.rows dt{flex:0 0 120px;font-size:15px;color:#fff;font-weight:500}
.rows dd{flex:1 1 auto;min-width:0;margin:0;font-size:15px;color:#b5b5b5}

@media (max-width:640px){
 .side{display:none}
 .card{padding:28px 22px 30px;border-radius:22px}
 .rows dt{flex-basis:96px}
 .phase svg{width:56px;height:56px}
 .phase.up{transform:translateY(-36px)}
 .screen{padding-bottom:calc(56px + env(safe-area-inset-bottom))}
 .trial .actions{flex-direction:column;align-items:stretch;width:100%;max-width:320px}
 .trial .btn.lg{width:100%}
 .trial h2{font-size:30px}
 .system{max-width:210px;order:-1;flex:0 0 auto;width:210px}
 .hero-body{gap:8px;padding-top:4px}
 .hero-text{gap:16px}
 h1{font-size:34px}
 .screen.center,.center{gap:16px}
}

@keyframes spin{to{transform:rotate(360deg)}}
@keyframes spinr{to{transform:rotate(-360deg)}}
@keyframes twinkle{0%,100%{opacity:.15}50%{opacity:1}}
@keyframes eclipse{0%,12%{transform:translate(34%,-22%)}50%,62%{transform:translate(0,0)}100%{transform:translate(-34%,22%)}}
@keyframes corona{0%,30%{opacity:0;transform:scale(.92)}50%,64%{opacity:1;transform:scale(1)}85%,100%{opacity:0;transform:scale(.96)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes shoot{0%,88%{opacity:0;transform:translate(0,0) rotate(-24deg)}90%{opacity:1}100%{opacity:0;transform:translate(-520px,230px) rotate(-24deg)}}
@keyframes pulse{0%,100%{box-shadow:0 0 40px 6px rgba(255,255,255,.28),0 0 0 1px rgba(255,255,255,.7)}50%{box-shadow:0 0 90px 22px rgba(255,255,255,.42),0 0 0 1px rgba(255,255,255,.9)}}
@keyframes glow{0%,100%{opacity:.35}33%{opacity:1}66%{opacity:.35}}
@keyframes cue{0%,100%{transform:translateY(0);opacity:.5}50%{transform:translateY(8px);opacity:1}}
@keyframes word{0%{opacity:0;transform:translateY(6px)}3%{opacity:1;transform:none}11%{opacity:1;transform:none}14%{opacity:0;transform:translateY(-6px)}100%{opacity:0}}
@keyframes in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

@media (prefers-reduced-motion:reduce){
 *{animation:none!important}
 html{scroll-behavior:auto}
 .words span:first-child{opacity:1}
 .moon{transform:translate(12%,-8%)}
}
