@font-face{font-family:Vazirmatn;src:url("../fonts/vazirmatn.f6d31671339d.woff2") format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{
  --bg:#050b18;--bg2:#08132a;--panel:#0d1a33;--ink:#f1f6ff;--mut:#bccae0;--faint:#8b9bb6;
  --line:rgba(150,185,240,.16);--blue:#6fb4ff;--focus:#a8d6ff;
  --ease:cubic-bezier(.2,.8,.2,1);
  color-scheme:dark;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);transition:background .5s,color .5s;color:var(--ink);font-family:Vazirmatn,Tahoma,sans-serif;font-feature-settings:"ss01";-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.8}
img{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer}
input,select,textarea{font:inherit}
:focus-visible{outline:2px solid var(--focus);outline-offset:4px;border-radius:8px}
.skip{position:absolute;top:10px;right:10px;z-index:100;background:var(--panel);padding:10px 18px;border-radius:10px;transform:translateY(-200%)}
.skip:focus{transform:none}
.eyebrow{font-family:Vazirmatn,Tahoma,sans-serif;font-weight:500;letter-spacing:.3em;font-size:12px;color:#7fb2ee;margin:0}

/* notice bar */
.notice{position:relative;z-index:5;display:flex;align-items:center;justify-content:center;gap:10px;padding:9px 16px;background:linear-gradient(90deg,#132b55,#2a1f5c,#132b55);font-size:14px;text-align:center}
.notice p{margin:0}.notice a{color:#ffd28a;font-weight:600;text-decoration:none}
.notice-dot{width:8px;height:8px;border-radius:50%;background:#ffd28a;box-shadow:0 0 0 0 #ffd28a88;animation:ping 2s infinite}
@keyframes ping{70%{box-shadow:0 0 0 10px #ffd28a00}100%{box-shadow:0 0 0 0 #ffd28a00}}

/* universe */
.cosmos{--stw:min(100vw,1600px,calc((100svh - 74px) * 1.376));position:relative;isolation:isolate;overflow:clip;background:var(--bg)}
.cosmos::before{content:'';position:absolute;inset:0;z-index:-2;pointer-events:none;transition:opacity .6s,filter .6s;
  background:url("../img/universe-tile.b5b0e9396ae4.webp") var(--bx,calc(50vw - var(--stw) / 2)) var(--by,77px)/var(--bw,calc(var(--stw) * 2)) auto repeat}
.cosmos-bg{position:sticky;top:0;height:100vh;height:100lvh;margin-bottom:-100vh;margin-bottom:-100lvh;z-index:-1;overflow:hidden;pointer-events:none}
.sky{position:absolute;inset:0;width:100%;height:100%;z-index:1}
.universe{position:relative;isolation:isolate;overflow:hidden}
.topbar{position:relative;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1600px;margin:0 auto;padding:18px clamp(16px,3.5vw,56px);border-bottom:1px solid var(--line)}
.wordmark{font:800 clamp(28px,2.4vw,40px)/1 Arial,Helvetica,sans-serif;letter-spacing:-.06em;text-decoration:none;color:var(--ink)}
.wordmark span{color:var(--blue);text-shadow:0 0 18px #6fb4ff88}
.topbar-tag{margin:0;color:var(--mut);font-size:15px;position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap}
.topnav{display:flex;align-items:center;gap:6px}
.topnav a{padding:8px 14px;border-radius:99px;text-decoration:none;color:var(--mut);font-size:14px;transition:color .2s,background .2s}
.topnav a:hover{color:var(--ink);background:#ffffff0d}
.topnav .topnav-cta{color:var(--ink);border:1px solid #5d8fd0;background:linear-gradient(135deg,#21406a,#13233c);box-shadow:inset 0 0 14px #759cd626,0 0 22px #529fff2e}
.topnav .topnav-cta:hover{background:linear-gradient(135deg,#2a5185,#172b4a)}

/* theme switch: a little sky - sun by day, moon among stars by night - plus an "auto" pill */
.theme-switch{display:inline-flex;align-items:center;gap:6px;padding:4px;border-radius:99px;border:1px solid var(--line);background:#ffffff08;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.ts-toggle{position:relative;width:62px;height:32px;padding:0;border:0;border-radius:99px;background:none;cursor:pointer;-webkit-tap-highlight-color:transparent}
.ts-track{position:absolute;inset:0;border-radius:inherit;overflow:hidden;
  background:linear-gradient(160deg,#0a1230,#1b2a63 70%,#2a2f73);box-shadow:inset 0 2px 6px #0009,inset 0 0 0 1px #ffffff14;transition:background .6s var(--ease),box-shadow .6s}
/* night: two or three faint stars on the open side, never behind the moon */
.ts-star{position:absolute;border-radius:50%;background:#fff;opacity:.7;box-shadow:0 0 3px #ffffffaa;transition:opacity .45s,transform .6s var(--ease);animation:ts-tw 3.6s ease-in-out infinite}
.ts-star.s1{right:11px;top:9px;width:2px;height:2px}
.ts-star.s2{right:20px;top:19px;width:1.5px;height:1.5px;opacity:.5;animation-delay:-1.4s}
.ts-star.s3{right:27px;top:8px;width:1px;height:1px;opacity:.45;animation-delay:-2.6s}
@keyframes ts-tw{50%{transform:scale(.55)}}
/* day: soft clouds on the open side, never behind the sun */
.ts-cloud{position:absolute;height:6px;border-radius:6px;background:#fff;opacity:0;transform:translateX(-10px);transition:opacity .5s,transform .7s var(--ease);
  filter:drop-shadow(0 1px 1.5px #3d7fd040)}
.ts-cloud::before,.ts-cloud::after{content:'';position:absolute;border-radius:50%;background:inherit}
.ts-cloud::before{width:7px;height:7px;left:3px;bottom:2px}
.ts-cloud::after{width:5px;height:5px;left:8px;bottom:3px}
.ts-cloud.c1{left:8px;top:16px;width:15px}
.ts-cloud.c2{left:19px;top:8px;width:11px;transform:translateX(-14px) scale(.85)}
.ts-knob{position:absolute;top:4px;left:4px;width:24px;height:24px;border-radius:50%;overflow:hidden;
  background:radial-gradient(circle at 34% 30%,#ffffff,#e3e9f6 45%,#aeb9d2);box-shadow:0 0 10px #c7d6ff66,0 2px 5px #0007,inset -3px -3px 6px #8090b04d;
  transition:left .55s cubic-bezier(.5,1.6,.4,1),background .5s,box-shadow .5s,transform .6s var(--ease)}
.ts-crater{position:absolute;border-radius:50%;background:#9aa6c2;box-shadow:inset 1px 1px 1px #7d89a6;transition:opacity .4s}
.ts-crater.k1{width:6px;height:6px;left:12px;top:5px}.ts-crater.k2{width:4px;height:4px;left:6px;top:13px}.ts-crater.k3{width:3px;height:3px;left:14px;top:15px}
/* day */
html[data-theme=light] .ts-track{background:linear-gradient(160deg,#5fb2ff,#9fd6ff 65%,#cdeaff);box-shadow:inset 0 2px 6px #1f6fd04d,inset 0 0 0 1px #ffffff80}
html[data-theme=light] .ts-star{opacity:0;animation:none;transform:translateY(5px) scale(.5)}
html[data-theme=light] .ts-cloud{opacity:.96;transform:none}
html[data-theme=light] .ts-cloud.c2{opacity:.8;transform:scale(.85)}
html[data-theme=light] .ts-knob{left:34px;transform:rotate(180deg);
  background:radial-gradient(circle at 38% 34%,#fffbe6,#ffd84a 48%,#ffab00);box-shadow:0 0 10px #ffc42b99,0 1px 4px #c46b0055}
html[data-theme=light] .ts-crater{opacity:0}
.ts-toggle:hover .ts-knob{box-shadow:0 0 14px #c7d6ffaa,0 2px 5px #0007,inset -3px -3px 6px #8090b04d}
html[data-theme=light] .ts-toggle:hover .ts-knob{box-shadow:0 0 16px #ffc42bcc,0 1px 4px #c46b0055}
.ts-toggle:active .ts-knob{width:28px}
.ts-toggle:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.ts-auto{display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 11px 0 9px;border-radius:99px;border:1px solid transparent;background:none;color:var(--faint);font-size:12.5px;font-weight:600;
  transition:color .25s,background .25s,border-color .25s,box-shadow .25s}
.ts-auto:hover{color:var(--ink)}
.theme-switch[data-mode=auto] .ts-auto{color:#fff;background:linear-gradient(135deg,#4f8cff,#7b5cff);box-shadow:0 4px 14px #5b6dff55,inset 0 1px 0 #ffffff40}
html[data-theme=light] .theme-switch{background:#ffffffb8;border-color:#d3dff0;box-shadow:0 4px 14px #1d3a7a12}

/* stage: everything inside is laid out in % of the 1376x1000 art */
.stage{--parx:0;--pary:0;position:relative;container-type:inline-size;width:min(100%,1600px,calc((100svh - 74px) * 1.376));min-width:min(100%,820px);aspect-ratio:1376/1000;margin:0 auto}
.stage-fx{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.traces{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}
.trace{fill:none;stroke-width:2.2;stroke-linecap:round;opacity:0;stroke-dasharray:14 26;transition:opacity .45s;filter:drop-shadow(0 0 4px #9fd6ff)}
.trace.on{opacity:.95;animation:flow 1.6s linear infinite}
@keyframes flow{to{stroke-dashoffset:-80}}

.hero{position:absolute;top:4.2%;left:12%;right:12%;text-align:center;z-index:2}
.hero .eyebrow{font-size:max(11px,.95cqw);margin-bottom:1.4cqw}
.hero h1{margin:0;font-size:max(28px,3.75cqw);font-weight:800;line-height:1.5;letter-spacing:-.02em;
  background:linear-gradient(180deg,#fff 30%,#bcd8ff);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 30px #2a6dd055)}
.hero-sub{margin:.7cqw auto 0;max-width:62cqw;color:var(--mut);font-size:max(14px,1.32cqw);line-height:1.9;text-shadow:0 1px 12px #000}

.core{position:absolute;left:var(--l);top:var(--t);width:var(--w);height:var(--h);z-index:1;transform:translate3d(calc(var(--parx) * 6px),calc(var(--pary) * 5px),0);transition:transform .6s var(--ease)}
.core::before{content:'';position:absolute;inset:6%;border-radius:50%;background:radial-gradient(closest-side,#5b8dff66,#5b8dff1a 60%,transparent);
  opacity:.55;transform:scale(.96);animation:breathe 6s ease-in-out infinite;will-change:opacity,transform;pointer-events:none}
.core-art{position:relative;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 2.2cqw #4d8dff55)}
@keyframes breathe{50%{opacity:1;transform:scale(1.06)}}
.core-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5cqw;text-align:center;pointer-events:none}
.core-label strong{font:800 max(30px,4.3cqw)/1 Arial,Helvetica,sans-serif;letter-spacing:-.05em;color:#fff;text-shadow:0 0 22px #b9d6ffaa,0 2px 2px #0008}
.core-label span{font-size:max(11px,1.05cqw);color:#d4e2f7;text-shadow:0 1px 8px #000}

/* nodes */
.nodes{position:absolute;inset:0;z-index:3;pointer-events:none}
.node{position:absolute;left:var(--l);top:var(--t);width:var(--w);height:var(--h);pointer-events:none;
  transform:translate3d(calc(var(--parx) * 14px),calc(var(--pary) * 10px),0);transition:transform .6s var(--ease)}
.node-btn{position:absolute;inset:0;padding:0;border:0;background:none;pointer-events:auto;border-radius:24px;-webkit-tap-highlight-color:transparent}
.node-art{position:absolute;inset:0;display:block;animation:float 6s ease-in-out infinite;animation-delay:var(--fd,0s)}
.node-art img{width:100%;height:100%;object-fit:contain;transition:transform .45s var(--ease),filter .45s;filter:drop-shadow(0 10px 18px #000a)}
.node-tools{--fd:-1.2s}.node-ai{--fd:-2.4s}.node-social{--fd:-3.6s}.node-consult{--fd:-4.8s}
@keyframes float{50%{transform:translateY(-3.5%)}}
.node-glow{position:absolute;left:8%;right:8%;bottom:-6%;height:40%;border-radius:50%;background:radial-gradient(closest-side,var(--c),transparent);opacity:.0;filter:blur(10px);transition:opacity .45s}
.node-label{position:absolute;top:calc(100% + .5cqw);left:50%;transform:translateX(-50%);width:max(180%,190px);text-align:center;display:flex;flex-direction:column;align-items:center}
.node-title{font-size:max(14px,1.5cqw);font-weight:700;line-height:1.6;text-shadow:0 2px 14px #000,0 0 2px #000;transition:color .3s,text-shadow .3s;white-space:nowrap}
.node-short{margin-top:.25cqw;font-size:max(11.5px,1.08cqw);color:var(--mut);line-height:1.7;padding:.1cqw .9cqw;border-radius:99px;background:#050b1873;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.chip{font-style:normal;font-size:.62em;font-weight:600;vertical-align:.25em;padding:.05em .7em;border-radius:99px;background:#ffb54724;color:#ffcf85;border:1px solid #ffb5475e;margin-inline-start:.3em}
.node.is-on .node-art img,.node-btn:hover .node-art img,.node-btn:focus-visible .node-art img{transform:translateY(-6%) scale(1.07);filter:drop-shadow(0 14px 22px #000a) drop-shadow(0 0 18px color-mix(in srgb,var(--c) 70%,transparent)) brightness(1.08)}
.node.is-on .node-glow,.node-btn:hover .node-glow,.node-btn:focus-visible .node-glow{opacity:.75}
.node.is-on .node-title,.node-btn:hover .node-title,.node-btn:focus-visible .node-title{color:color-mix(in srgb,var(--c) 45%,#fff);text-shadow:0 0 22px var(--c),0 2px 10px #000}
.node-btn:focus-visible{outline-offset:8px}

/* decorative animations start only once the page is ready (site.js adds .anim) */
html:not(.anim) .node-art,html:not(.anim) .core::before,html:not(.anim) .ticket-body::after,html:not(.anim) .hint-dot::after,
html:not(.anim) .ts-star,html:not(.anim) .ticket{animation-play-state:paused}

/* hanging ticket */
.ticket{position:absolute;top:-6%;left:calc(100% - 4%);width:max(58px,5.4cqw);padding:0;border:0;background:none;pointer-events:auto;transform-origin:50% 0;transform:rotate(var(--rot,0deg));z-index:4;will-change:transform;
  animation:ticket-swing 3.4s ease-in-out infinite}
.js-swing .ticket{animation:none}
@keyframes ticket-swing{0%,100%{transform:rotate(7deg)}50%{transform:rotate(-7deg)}}
.node-tools .ticket,.node-social .ticket{left:auto;right:calc(100% - 4%)}
.ticket::before{content:'';position:absolute;top:-4px;left:50%;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff,#9bb3d6 60%,#4f6787);box-shadow:0 1px 3px #000a}
.ticket-rope{display:block;width:1.5px;height:max(26px,2.6cqw);margin:0 auto;background:linear-gradient(#d9e6ff,#8fa6c9)}
.ticket-body{position:relative;display:flex;flex-direction:column;align-items:center;padding:.65em .3em .55em;border-radius:7px;color:#fff;
  background:linear-gradient(160deg,color-mix(in srgb,var(--tc) 80%,#fff),var(--tc) 55%,color-mix(in srgb,var(--tc) 70%,#000));
  box-shadow:0 8px 18px #0009,inset 0 1px 0 #fff6,0 0 22px color-mix(in srgb,var(--tc) 55%,transparent);
  -webkit-mask:radial-gradient(circle 5px at 0 62%,#0000 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 5px at 100% 62%,#0000 98%,#000) right/51% 100% no-repeat;
          mask:radial-gradient(circle 5px at 0 62%,#0000 98%,#000) left/51% 100% no-repeat,radial-gradient(circle 5px at 100% 62%,#0000 98%,#000) right/51% 100% no-repeat;overflow:hidden}
.ticket-body::before{content:'';position:absolute;top:3px;left:50%;width:7px;height:7px;margin-left:-3.5px;border-radius:50%;background:#0b1424;box-shadow:inset 0 1px 2px #000}
.ticket-body::after{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,#fff7 50%,transparent 65%);transform:translateX(-120%);animation:shine 4.5s ease-in-out infinite 1s}
@keyframes shine{30%,100%{transform:translateX(120%)}}
.ticket-body b{font-size:max(17px,1.65cqw);line-height:1.2;font-weight:900;margin-top:.15em;text-shadow:0 1px 2px #0005}
.ticket-body small{font-size:max(9.5px,.78cqw);font-weight:600;line-height:1.5;border-top:1.5px dashed #ffffffa0;padding-top:.15em;margin-top:.15em;white-space:nowrap}
.ticket:hover .ticket-body{filter:brightness(1.1)}

.stage-hint{position:absolute;left:0;right:0;bottom:3.5%;margin:0;display:flex;align-items:center;justify-content:center;gap:.8cqw;color:var(--mut);font-size:max(13px,1.2cqw);z-index:3;text-shadow:0 1px 10px #000}
.hint-dot{position:relative;width:9px;height:9px;border-radius:50%;background:var(--blue)}
.hint-dot::after{content:'';position:absolute;inset:0;border-radius:50%;background:#6fb4ff;opacity:0;animation:ping2 2.2s infinite}
@keyframes ping2{0%{transform:scale(1);opacity:.6}70%,100%{transform:scale(3.6);opacity:0}}
.hint-text{transition:opacity .25s}
.hint-text.fade{opacity:0}

/* highlights */
.highlights{display:grid;grid-template-columns:repeat(4,1fr);max-width:1240px;margin:0 auto;padding:10px 24px 0;gap:14px}
.hl{text-align:center;padding:22px 12px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#0d1b36,#081227)}
.hl b{display:block;font-size:clamp(26px,2.6vw,38px);font-weight:800;line-height:1.3;background:linear-gradient(180deg,#fff,#9cc8ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.hl span{color:var(--mut);font-size:14px}

/* journey */
.section-head{text-align:center;max-width:760px;margin:0 auto 34px;padding:0 20px}
.section-head h2{font-size:clamp(24px,2.6vw,38px);margin:10px 0 6px;line-height:1.5}
.section-head p{color:var(--mut);margin:0;font-size:16px}
.journey{padding:90px 0 40px;position:relative}
.steps{list-style:none;margin:0 auto;padding:0 24px;max-width:1300px;display:grid;grid-template-columns:repeat(5,1fr);gap:16px;position:relative}
.steps::before{content:'';position:absolute;top:58px;left:8%;right:8%;height:2px;background:linear-gradient(90deg,transparent,#4c6fa5 15%,#7d6ff0 50%,#4c6fa5 85%,transparent);opacity:.55}
.step button{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;text-align:center;padding:18px 14px 20px;border:1px solid var(--line);border-radius:20px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--c) 9%,#0b1730),#081227);transition:transform .35s var(--ease),border-color .35s,box-shadow .35s}
.step button:hover,.step button:focus-visible{transform:translateY(-6px);border-color:color-mix(in srgb,var(--c) 60%,transparent);box-shadow:0 18px 40px #0008,0 0 30px color-mix(in srgb,var(--c) 20%,transparent)}
.step-num{position:absolute;top:12px;right:14px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700;background:color-mix(in srgb,var(--c) 25%,#0b1730);color:color-mix(in srgb,var(--c) 40%,#fff);border:1px solid color-mix(in srgb,var(--c) 50%,transparent)}
.step img{width:92px;height:80px;object-fit:contain;margin:4px 0 10px;filter:drop-shadow(0 8px 14px #000a);transition:transform .35s var(--ease)}
.step button:hover img{transform:scale(1.08) translateY(-3px)}
.step-name{font-weight:800;font-size:17px;color:color-mix(in srgb,var(--c) 35%,#fff)}
.step-text{color:var(--mut);font-size:13.5px;line-height:1.9;margin:6px 0 12px;flex:1}
.step-svc{font-size:12.5px;color:var(--faint)}
.step-svc i{font-style:normal;font-size:11px;padding:1px 7px;border-radius:99px;background:#2fd47a22;color:#7ff0ac;margin:0 3px}
.step-svc i.soon{background:#ffb54722;color:#ffcf85}

/* faq */
.faq{padding:60px 20px 80px}
.faq-list{max-width:860px;margin:0 auto;display:grid;gap:10px}
.faq details{border:1px solid var(--line);border-radius:16px;background:#0a1630;padding:0 20px;transition:border-color .3s}
.faq details[open]{border-color:#3f6aa8}
.faq summary{cursor:pointer;list-style:none;padding:17px 0;font-weight:700;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-size:22px;line-height:1;color:var(--blue);transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 18px;color:var(--mut);line-height:2}

/* footer */
.footer{position:relative;z-index:1;border-top:1px solid var(--line);background:linear-gradient(180deg,#081329,#050b18)}
.footer-grid{max-width:1400px;margin:0 auto;padding:48px clamp(16px,3.5vw,56px) 30px;display:grid;grid-template-columns:1.6fr 1.1fr 1fr .9fr;gap:36px}
.footer h2{font-size:16px;margin:0 0 14px}
.f-brand p{color:var(--mut);font-size:14px;line-height:2.1;margin:14px 0 20px;text-align:justify;text-align-last:right;hyphens:none}
@property --ang{syntax:'<angle>';initial-value:0deg;inherits:false}
.meaning{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;direction:ltr}
.meaning li{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:14px 6px 12px;border-radius:16px;isolation:isolate;cursor:default;
  border:1.5px solid transparent;background:linear-gradient(160deg,#0d1b36,#081227) padding-box,conic-gradient(from var(--ang),#ffffff10 0 62%,var(--mc) 80%,#ffffff10 96%) border-box;
  animation:mn-spin 6s linear infinite,mn-lift 4.8s ease-in-out infinite;animation-delay:calc(var(--i) * -1.5s),calc(var(--i) * 1.2s);transition:transform .35s var(--ease)}
.meaning li::before{content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;background:radial-gradient(70% 60% at 50% 0%,color-mix(in srgb,var(--mc) 34%,transparent),transparent 70%);opacity:.35;animation:mn-glow 4.8s ease-in-out infinite;animation-delay:calc(var(--i) * 1.2s)}
.meaning li:not(:last-child)::after{content:'';position:absolute;top:34px;right:-10px;width:10px;height:1.5px;background:linear-gradient(90deg,var(--mc),transparent)}
.meaning b{font:900 clamp(30px,2.6vw,38px)/1.1 Vazirmatn,Tahoma,sans-serif;background:linear-gradient(180deg,#fff 15%,var(--mc));-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 10px color-mix(in srgb,var(--mc) 60%,transparent));transition:transform .35s var(--ease)}
.meaning span{font:600 12px/1.4 Vazirmatn,Tahoma,sans-serif;color:#dbe6f6;letter-spacing:.02em}
.meaning small{font-size:11.5px;color:var(--faint);direction:rtl}
.meaning li:hover{transform:translateY(-5px)}
.meaning li:hover b{transform:scale(1.15)}
.meaning.paused li,.meaning.paused li::before{animation-play-state:paused}
@keyframes mn-spin{to{--ang:360deg}}
@keyframes mn-glow{0%,100%{opacity:.3}12%{opacity:1}30%{opacity:.3}}
@keyframes mn-lift{0%,100%{transform:none}12%{transform:translateY(-4px)}30%{transform:none}}
.f-contact dl{margin:0;display:grid;gap:12px}.f-contact dt{color:var(--faint);font-size:13px}.f-contact dd{margin:0;font-size:14.5px;text-align:right}
.f-contact dd.addr{text-align:justify;text-align-last:right;line-height:2}
.f-contact dd span[dir=ltr],.f-contact dd a[dir=ltr]{display:inline-block;unicode-bidi:isolate;letter-spacing:.04em}
.f-contact a{text-decoration:none}
.f-services{display:flex;flex-direction:column;gap:9px}
.f-services a{text-decoration:none;color:var(--mut);font-size:14.5px;transition:color .2s}.f-services a:hover{color:var(--ink)}
.trust{display:grid;place-items:center;width:130px;min-height:130px;border:1px solid var(--line);border-radius:16px;background:#0b1730}
.trust-empty{color:var(--faint);font-size:12.5px;text-align:center;line-height:1.9;padding:12px}
.footer-bottom{max-width:1400px;margin:0 auto;padding:18px clamp(16px,3.5vw,56px) 26px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;color:var(--faint);font-size:13px}
.footer-bottom p{margin:0}
.socials{display:flex;align-items:center;gap:0}
.socials a{display:inline-block;min-height:32px;line-height:32px;padding:0 6px;text-decoration:none;color:var(--mut);font-size:14px;transition:color .2s}
.socials a:hover{color:var(--ink)}
.socials a+a::before{content:'•';display:inline-block;margin:0 10px 0 16px;color:var(--faint);font-size:11px;vertical-align:2px}

/* back to top */
.to-top{position:fixed;left:max(18px,env(safe-area-inset-left));bottom:max(18px,env(safe-area-inset-bottom));z-index:40;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;
  color:#eaf3ff;background:#0d1a33e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 10px 26px #000a,0 0 22px #4f9dff33;
  opacity:0;transform:translateY(16px) scale(.85);pointer-events:none;transition:opacity .35s,transform .35s var(--ease),box-shadow .25s}
.to-top.show{opacity:1;transform:none;pointer-events:auto}
.to-top:hover{box-shadow:0 12px 30px #000a,0 0 30px #4f9dff77}
.to-top:hover .to-top-arrow{transform:translateY(-3px)}
.to-top-ring{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.to-top-ring circle{fill:none;stroke:#ffffff1f;stroke-width:2.5}
.to-top-ring .to-top-prog{stroke:#6fb4ff;stroke-linecap:round;stroke-dasharray:132;stroke-dashoffset:calc(132 - 132 * var(--p,0))}
.to-top-arrow{position:relative;transition:transform .25s var(--ease)}
html.sheet-open .to-top{opacity:0;pointer-events:none}

/* service sheet */
.sheet{border:0;padding:0;background:transparent;color:var(--ink);max-width:none;max-height:none;width:100%;height:100%;overflow:hidden}
.sheet::backdrop{background:#02060fcc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.sheet[open]{display:flex;align-items:center;justify-content:center}
.sheet-card{--c:var(--blue);position:relative;width:min(1040px,94vw);max-height:min(92svh,860px);display:flex;flex-direction:column;border-radius:28px;overflow:hidden;
  background:radial-gradient(80% 60% at 85% 0%,color-mix(in srgb,var(--c) 22%,transparent),transparent 70%),linear-gradient(180deg,#0e1c38,#081226);
  border:1px solid color-mix(in srgb,var(--c) 35%,#ffffff1a);box-shadow:0 30px 80px #000c,0 0 60px color-mix(in srgb,var(--c) 18%,transparent);
  animation:pop .45s var(--ease);transition:border-color .4s,background .4s}
@keyframes pop{from{opacity:0;transform:translateY(24px) scale(.97)}}
.sheet-close{position:absolute;top:14px;left:14px;z-index:3;width:42px;height:42px;border-radius:50%;border:1px solid #ffffff22;background:#0b1424cc;display:grid;place-items:center;transition:background .2s,transform .2s}
.sheet-close:hover{background:#1b2a44;transform:rotate(90deg)}
.sheet-scroll{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;flex:1}
.pv{padding:32px clamp(18px,3.4vw,40px) 26px;animation:slidein .4s var(--ease)}
.pv.from-left{animation-name:slidein-l}
@keyframes slidein{from{opacity:0;transform:translateX(-26px)}}
@keyframes slidein-l{from{opacity:0;transform:translateX(26px)}}
.pv-head{display:flex;align-items:center;gap:20px;padding-left:44px;margin-bottom:22px}
.pv-icon{flex:none;width:92px;height:92px;border-radius:24px;display:grid;place-items:center;background:radial-gradient(circle at 50% 60%,color-mix(in srgb,var(--c) 30%,transparent),transparent 70%);border:1px solid color-mix(in srgb,var(--c) 30%,transparent)}
.pv-icon img{width:82%;height:82%;object-fit:contain}
.pv-kicker{margin:0;font-size:13px;color:var(--mut);display:flex;align-items:center;gap:7px}
.live-dot,.soon-dot{width:8px;height:8px;border-radius:50%;background:#33e08a;box-shadow:0 0 10px #33e08a}
.soon-dot{background:#ffb547;box-shadow:0 0 10px #ffb547}
.pv-head h2{margin:2px 0;font-size:clamp(24px,2.6vw,34px);line-height:1.4;color:color-mix(in srgb,var(--c) 25%,#fff)}
.pv-tag{margin:0;color:var(--mut);font-size:16px}
.pv-body{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr);gap:28px}
.pv-media{display:flex;flex-direction:column;gap:14px}
.pv-video{position:relative;border-radius:20px;overflow:hidden;border:1px solid #ffffff1a;background:#000;aspect-ratio:16/10}
.pv-video video{width:100%;height:100%;object-fit:cover;display:block}
.pv-play{position:absolute;inset:0;margin:auto;width:72px;height:72px;border-radius:50%;border:0;display:none;place-items:center;color:#061024;background:color-mix(in srgb,var(--c) 70%,#fff);box-shadow:0 10px 30px #000a,0 0 0 8px color-mix(in srgb,var(--c) 25%,transparent)}
.pv-video.paused .pv-play{display:grid}
.pv-video.paused video{opacity:0}
.pv-video.paused{background:var(--poster) center/cover}
.pv-visual{position:relative;aspect-ratio:16/11;border-radius:20px;overflow:hidden;display:grid;place-items:center;border:1px solid #ffffff14;
  background:radial-gradient(circle at 50% 55%,color-mix(in srgb,var(--c) 26%,transparent),transparent 62%),url("../img/universe-bg.212e5ed0a12e.webp") center/220% auto}
.pv-visual img{width:46%;position:relative;z-index:1;animation:float 5s ease-in-out infinite;filter:drop-shadow(0 16px 24px #000b) drop-shadow(0 0 24px color-mix(in srgb,var(--c) 45%,transparent))}
.orbit{position:absolute;left:50%;top:52%;border-radius:50%;border:1px solid color-mix(in srgb,var(--c) 40%,transparent);transform:translate(-50%,-50%) rotateX(68deg);animation:spin 14s linear infinite}
.orbit::after{content:'';position:absolute;top:-4px;left:50%;width:8px;height:8px;border-radius:50%;background:var(--c);box-shadow:0 0 12px var(--c)}
.o1{width:62%;height:62%}.o2{width:82%;height:82%;animation-duration:22s;animation-direction:reverse;opacity:.6}.o3{width:102%;height:102%;animation-duration:30s;opacity:.35}
@keyframes spin{to{transform:translate(-50%,-50%) rotateX(68deg) rotate(360deg)}}
.pv-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.pv-stats div{padding:12px 14px;border-radius:14px;background:#ffffff08;border:1px solid #ffffff12}
.pv-stats b{display:block;font-size:22px;font-weight:800;line-height:1.3;color:color-mix(in srgb,var(--c) 30%,#fff)}
.pv-stats span{font-size:12.5px;color:var(--mut)}
.pv-desc{margin:0 0 14px;color:#dce6f5;font-size:15.5px;line-height:2.05}
.pv-feat{list-style:none;margin:0 0 18px;padding:0;display:grid;gap:9px}
.pv-feat li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;line-height:1.9}
.pv-feat svg{flex:none;margin-top:4px}
.pv-feat circle{fill:color-mix(in srgb,var(--c) 22%,transparent);stroke:color-mix(in srgb,var(--c) 70%,transparent)}
.pv-feat path{fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.offers{margin-bottom:18px}
.offers-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 8px;font-size:13.5px;font-weight:700;color:#e3ecf9}
.offers-head em{font-style:normal;font-weight:500;font-size:12px;color:var(--faint)}
.offers-view{overflow:hidden;border-radius:16px}
.offers-track{display:flex;transition:transform .6s var(--ease)}
.offers-track .pv-offer{flex:0 0 100%}
.offers-dots{display:flex;justify-content:center;gap:6px;margin-top:10px}
.offers-dots button{position:relative;width:22px;height:6px;padding:0;border:0;border-radius:9px;background:#ffffff26;overflow:hidden}
.offers-dots button i{position:absolute;inset:0;background:var(--tc);transform:scaleX(0);transform-origin:right}
.offers-dots button.on i{animation:dotfill var(--dur,4.5s) linear forwards}
.offers.paused .offers-dots button.on i{animation-play-state:paused}
@keyframes dotfill{to{transform:scaleX(1)}}
.pv-offer{display:flex;gap:14px;align-items:center;padding:14px;border-radius:16px;min-height:112px;border:1px dashed color-mix(in srgb,var(--tc) 70%,transparent);background:color-mix(in srgb,var(--tc) 10%,transparent)}
.pv-offer-badge{flex:none;width:70px;padding:10px 4px;border-radius:10px;text-align:center;background:linear-gradient(160deg,color-mix(in srgb,var(--tc) 80%,#fff),var(--tc));color:#fff;box-shadow:0 6px 16px #0007}
.pv-offer-badge b{display:block;font-size:22px;line-height:1.2;font-weight:900}.pv-offer-badge small{font-size:10.5px;font-weight:600}
.pv-offer-text strong{display:block;font-size:15px}.pv-offer-text p{margin:2px 0 0;color:var(--mut);font-size:13.5px;line-height:1.9}
.pv-offer-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:8px}
.code{display:inline-flex;align-items:center;gap:10px;padding:6px 8px 6px 12px;border-radius:10px;border:1px solid #ffffff2a;background:#0008;font-family:Vazirmatn,Tahoma,sans-serif;font-weight:700;font-size:15px;letter-spacing:.08em}
.code em{font:600 12px Vazirmatn,sans-serif;font-style:normal;letter-spacing:0;padding:3px 9px;border-radius:7px;background:var(--tc);color:#fff}
.countdown{font-size:13px;color:#ffd7a8}
.pv-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:13px 26px;border-radius:14px;border:0;text-decoration:none;font-weight:800;font-size:16px;color:#061024;
  background:linear-gradient(135deg,color-mix(in srgb,var(--c) 55%,#fff),var(--c));box-shadow:0 10px 26px color-mix(in srgb,var(--c) 35%,transparent),inset 0 1px 0 #fff8;transition:transform .2s,box-shadow .2s,filter .2s}
.btn:hover{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 14px 32px color-mix(in srgb,var(--c) 50%,transparent),inset 0 1px 0 #fff8}
.pv-url{font-size:13px;color:var(--faint)}
.lead{width:100%}
.lead label{display:block;font-weight:700;margin-bottom:8px}
.lead-row{display:flex;gap:10px}
.lead input{flex:1;min-width:0;padding:12px 16px;border-radius:14px;border:1px solid #ffffff2a;background:#0009;color:var(--ink);font:16px Vazirmatn,sans-serif;letter-spacing:.06em}
.lead input:focus{outline:none;border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 30%,transparent)}
.lead-msg{margin:8px 0 0;font-size:13.5px;min-height:1.6em;color:var(--mut)}
.lead-msg.ok{color:#7ff0ac}.lead-msg.err{color:#ff9d9d}
.lead.done .lead-row{display:none}
.sheet-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px clamp(14px,3vw,30px);border-top:1px solid #ffffff14;background:#060e1fcc}
.sheet-nav>button{border:0;background:none;color:var(--mut);padding:8px 10px;border-radius:10px;font-size:14px;transition:color .2s,background .2s}
.sheet-nav>button:hover{color:var(--ink);background:#ffffff0d}
.dots{display:flex;gap:8px}
.dots button{width:10px;height:10px;padding:0;border-radius:99px;border:0;background:#ffffff33;transition:width .3s,background .3s}
.dots button.on{width:26px;background:var(--c)}


/* ================= light theme (auto by Tehran daylight, or chosen) ================= */
html[data-theme=light]{color-scheme:light;
  --bg:#eef3fb;--bg2:#e6edf8;--panel:#ffffff;--ink:#0f1d36;--mut:#3e5072;--faint:#6b7b98;--line:rgba(28,58,112,.13);--blue:#2563eb;--focus:#2563eb}
html[data-theme=light] .cosmos::before{filter:invert(1) hue-rotate(180deg) saturate(1.35) brightness(1.04);opacity:.52}
html[data-theme=light] .sky{filter:invert(1) hue-rotate(180deg);opacity:.55}
html[data-theme=light] .eyebrow{color:#3567c4}
html[data-theme=light] .notice{background:linear-gradient(90deg,#dbe7ff,#e9defd,#dbe7ff);color:var(--ink)}
html[data-theme=light] .notice a{color:#b45309}
html[data-theme=light] .wordmark span{text-shadow:0 0 16px #2563eb44}
html[data-theme=light] .topnav a:hover{background:#0f1d360a}
html[data-theme=light] .topnav .topnav-cta{color:#fff;border-color:#2563eb;background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 6px 18px #2563eb40}
html[data-theme=light] .hero h1{background:linear-gradient(180deg,#0f1d36 30%,#2457b8);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 4px 24px #ffffff)}
html[data-theme=light] .hero-sub,html[data-theme=light] .stage-hint{text-shadow:0 0 12px #fff,0 0 3px #fff}
html[data-theme=light] .core-art{filter:drop-shadow(0 14px 30px #1d3a7a55)}
html[data-theme=light] .node-art img{filter:drop-shadow(0 10px 16px #1d3a7a40)}
html[data-theme=light] .node-title{color:var(--ink);text-shadow:0 0 14px #fff,0 0 4px #fff}
html[data-theme=light] .node.is-on .node-title,html[data-theme=light] .node-btn:hover .node-title{color:color-mix(in srgb,var(--c) 60%,#0f1d36);text-shadow:0 0 14px #fff}
html[data-theme=light] .node-short{background:#ffffffc7;color:var(--mut);box-shadow:0 2px 10px #1d3a7a14}
html[data-theme=light] .chip{background:#fff4e0;color:#a85f00;border-color:#f3c27a}
html[data-theme=light] .trace{filter:drop-shadow(0 0 3px color-mix(in srgb,var(--c,#2563eb) 60%,#fff))}
html[data-theme=light] .ticket-body::before{background:#fff}
html[data-theme=light] .hl{background:#ffffffc9;border-color:#d6e1f1;box-shadow:0 10px 30px #1d3a7a12;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
html[data-theme=light] .hl b{background:linear-gradient(180deg,#0f1d36,#2563eb);-webkit-background-clip:text;background-clip:text}
html[data-theme=light] .section-head h2{text-shadow:0 0 18px #fff}
html[data-theme=light] .section-head p{text-shadow:0 0 10px #fff}
html[data-theme=light] .steps::before{opacity:.35}
html[data-theme=light] .step button{background:linear-gradient(180deg,color-mix(in srgb,var(--c) 10%,#ffffff),#ffffffd9);border-color:#d6e1f1;box-shadow:0 10px 30px #1d3a7a10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
html[data-theme=light] .step button:hover{box-shadow:0 18px 40px #1d3a7a24,0 0 0 1px color-mix(in srgb,var(--c) 40%,transparent)}
html[data-theme=light] .step-num{background:color-mix(in srgb,var(--c) 16%,#fff);color:color-mix(in srgb,var(--c) 70%,#0f1d36)}
html[data-theme=light] .step-name{color:color-mix(in srgb,var(--c) 62%,#0f1d36)}
html[data-theme=light] .step img{filter:drop-shadow(0 8px 12px #1d3a7a33)}
html[data-theme=light] .step-svc i{background:#e3f7ea;color:#15803d}
html[data-theme=light] .step-svc i.soon{background:#fff4e0;color:#a85f00}
html[data-theme=light] .faq details{background:#ffffffd1;border-color:#d6e1f1;box-shadow:0 6px 20px #1d3a7a0d}
html[data-theme=light] .faq details[open]{border-color:#2563eb66}
html[data-theme=light] .footer{background:linear-gradient(180deg,#e7eef9,#dde6f3)}
html[data-theme=light] .meaning li{background:linear-gradient(160deg,#ffffff,#f1f5fc) padding-box,conic-gradient(from var(--ang),#0f1d3612 0 62%,var(--mc) 80%,#0f1d3612 96%) border-box}
html[data-theme=light] .meaning b{background:linear-gradient(180deg,color-mix(in srgb,var(--mc) 35%,#0f1d36) 10%,var(--mc));-webkit-background-clip:text;background-clip:text;filter:none}
html[data-theme=light] .meaning span{color:#1f2f4d}
html[data-theme=light] .trust{background:#ffffffb3}
html[data-theme=light] .to-top{background:#ffffffeb;color:var(--ink);box-shadow:0 10px 26px #1d3a7a2e}
html[data-theme=light] .to-top-ring circle{stroke:#0f1d361a}
html[data-theme=light] .to-top-ring .to-top-prog{stroke:#2563eb}
html[data-theme=light] .sheet::backdrop{background:#0f1d3666}
html[data-theme=light] .sheet-card{background:radial-gradient(80% 60% at 85% 0%,color-mix(in srgb,var(--c) 16%,transparent),transparent 70%),linear-gradient(180deg,#ffffff,#f3f6fc);
  border-color:color-mix(in srgb,var(--c) 30%,#dbe4f2);box-shadow:0 30px 80px #0f1d3640}
html[data-theme=light] .sheet-close{background:#ffffffd9;border-color:#d6e1f1}
html[data-theme=light] .sheet-close:hover{background:#eef3fb}
html[data-theme=light] .pv-head h2{color:color-mix(in srgb,var(--c) 58%,#0f1d36)}
html[data-theme=light] .pv-desc{color:#22324f}
html[data-theme=light] .pv-video{border-color:#d6e1f1}
html[data-theme=light] .pv-stats div{background:#f4f7fc;border-color:#dfe7f3}
html[data-theme=light] .pv-stats b{color:color-mix(in srgb,var(--c) 62%,#0f1d36)}
html[data-theme=light] .pv-feat circle{fill:color-mix(in srgb,var(--c) 85%,#fff);stroke:none}
html[data-theme=light] .offers-head{color:var(--ink)}
html[data-theme=light] .offers-dots button{background:#0f1d361f}
html[data-theme=light] .pv-offer{background:color-mix(in srgb,var(--tc) 8%,#fff)}
html[data-theme=light] .code{background:#fff;border-color:#d6e1f1}
html[data-theme=light] .countdown{color:#b45309}
html[data-theme=light] .lead input{background:#fff;border-color:#cfdbee}
html[data-theme=light] .lead-msg.ok{color:#15803d}
html[data-theme=light] .lead-msg.err{color:#dc2626}
html[data-theme=light] .sheet-nav{background:#f4f7fcf0;border-top-color:#dfe7f3}
html[data-theme=light] .sheet-nav>button:hover{background:#0f1d360a}
html[data-theme=light] .dots button{background:#0f1d3626}
html[data-theme=light] .dots button.on{background:var(--c)}

/* justified text: full lines touch both edges, the last line keeps its natural alignment */
/* short two-to-three word labels (.node-short, .hl span) stay centred: justifying them only opens big gaps */
.hero-sub,.section-head p,.step-text{text-align:justify;text-align-last:center;text-justify:inter-word}
.pv-desc,.pv-tag,.pv-feat li,.pv-offer-text p,.faq details p,.lead-msg,.f-brand p,.f-contact dd.addr{text-align:justify;text-align-last:start;text-justify:inter-word}

.journey,.faq,.footer{content-visibility:auto;contain-intrinsic-size:auto 1200px}

/* reveal on scroll */
.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--i,0) * 70ms)}
.js .reveal.in{opacity:1;transform:none}

/* tablet */
@media (max-width:1100px){
  .topbar-tag{display:none}
  .steps{grid-template-columns:repeat(3,1fr)}
  .steps::before{display:none}
  .footer-grid{grid-template-columns:1fr 1fr}
}

/* phone: the stage becomes a vertical flow */
@media (max-width:819px){
  .topbar{padding:12px 16px;gap:10px}
  .wordmark{font-size:30px}
  .topnav{gap:8px}
  .topnav a:not(.topnav-cta){display:none}
  .topnav .topnav-cta{padding:8px 14px;font-size:13px}
  .theme-switch{padding:3px;gap:3px}
  .ts-toggle{width:56px;height:30px}
  .ts-knob{width:22px;height:22px}
  html[data-theme=light] .ts-knob{left:30px}
  .ts-star.s1{right:9px}.ts-star.s2{right:17px;top:18px}.ts-star.s3{right:23px}
  .ts-cloud.c1{left:6px;top:15px;width:14px}.ts-cloud.c2{left:16px;top:7px;width:10px}
  .ts-auto{width:30px;height:30px;padding:0;justify-content:center}
  .ts-auto span{display:none}
  .stage{width:100%;min-width:0;aspect-ratio:auto;container-type:normal;padding:0 0 28px}
  .cosmos::before{background-image:url("../img/universe-strip.064b25f92761.webp");background-position:var(--bxs,calc(50vw - 255px)) var(--by,0px);
    background-size:var(--bws,510px) auto;background-repeat:repeat-y}
      .traces{display:none}
  .hero{position:relative;inset:auto;padding:30px 20px 0}
  .hero .eyebrow{font-size:11px;margin-bottom:12px;letter-spacing:.24em}
  .hero h1{font-size:clamp(27px,7.6vw,40px);line-height:1.45}
  .hero-sub{font-size:14px;max-width:340px;margin-top:6px;line-height:1.95;text-wrap:pretty}
  .core{position:relative;left:auto;top:auto;width:min(60vw,250px);height:auto;aspect-ratio:1;margin:10px auto 6px;transform:none}
  .core-label strong{font-size:clamp(34px,10vw,48px)}.core-label span{font-size:12.5px}
  .nodes{position:relative;inset:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 16px;pointer-events:auto}
  .node{position:relative;left:auto;top:auto;width:auto;height:auto;transform:none;pointer-events:auto}
  .node-events{order:1;grid-column:1/-1}.node-ai{order:2}.node-tools{order:3}.node-consult{order:4}.node-social{order:5}
  .node{display:flex}
  .node-btn{position:relative;inset:auto;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;padding:16px 10px 16px;border:1px solid color-mix(in srgb,var(--c) 26%,#ffffff10);border-radius:22px;overflow:hidden;
    background:radial-gradient(120% 70% at 50% 0%,color-mix(in srgb,var(--c) 18%,transparent),transparent 65%),linear-gradient(180deg,#0c1a35e6,#081227ee);
    box-shadow:0 12px 30px #0006,inset 0 1px 0 #ffffff12;transition:transform .25s var(--ease),border-color .25s}
  .node-btn::before{content:'';position:absolute;top:0;left:22%;right:22%;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,var(--c),transparent);opacity:.8}
  .node-btn:active{transform:scale(.97)}
  .node-art{position:relative;inset:auto;width:min(30vw,124px);aspect-ratio:1.25}
  .node-glow{bottom:auto;top:34%;left:20%;right:20%}
  .node-label{position:static;top:auto;left:auto;transform:none;width:100%;margin-top:8px}
  .node-title{font-size:14.5px;white-space:normal;line-height:1.55;text-wrap:balance}
  .node-title .chip{position:absolute;top:12px;inset-inline-start:12px;font-size:10.5px;vertical-align:0;margin:0}
  .node-short{font-size:12px;background:none;padding:0;backdrop-filter:none;margin-top:4px;line-height:1.75;text-wrap:balance;max-width:150px}
  /* the first service (events) is a wide row card */
  .node-events .node-btn{flex-direction:row;justify-content:flex-start;gap:14px;padding:14px 16px;text-align:right}
  .node-events .node-art{width:min(32vw,128px);flex:none}
  .node-events .node-label{margin:0;align-items:flex-start;text-align:right;flex:1}
  .node-events .node-short{max-width:none}
  .node-events .node-btn::after{content:'';position:absolute;left:16px;top:50%;width:30px;height:30px;margin-top:-15px;border-radius:50%;
    background:color-mix(in srgb,var(--c) 22%,transparent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 18l-6-6 6-6'/%3E%3C/svg%3E") center/16px no-repeat}
  html[data-theme=light] .node-btn{background:radial-gradient(120% 70% at 50% 0%,color-mix(in srgb,var(--c) 14%,transparent),transparent 65%),linear-gradient(180deg,#ffffffe6,#f6f9fde6);border-color:#d6e1f1;box-shadow:0 12px 28px #1d3a7a14}
  html[data-theme=light] .node-events .node-btn::after{background-color:color-mix(in srgb,var(--c) 85%,#fff)}
  .ticket{top:-8px;left:auto;right:auto;inset-inline-end:10px;width:54px;z-index:5}
  .node-tools .ticket,.node-social .ticket{right:auto;inset-inline-end:10px}
  .ticket-rope{height:14px}
  .ticket-body b{font-size:16px}.ticket-body small{font-size:9.5px}
  .stage-hint{position:relative;bottom:auto;margin-top:18px;font-size:13px;padding:0 16px}
  .stage-hint{gap:10px}
  html[data-theme=light] .node-short{background:none;box-shadow:none}
  html[data-theme=light] .hl,html[data-theme=light] .step button,html[data-theme=light] .faq details{-webkit-backdrop-filter:none;backdrop-filter:none;background-color:#fffffff0}
  .highlights{grid-template-columns:1fr 1fr;padding:8px 16px 0;gap:10px}
  .hl{padding:16px 10px;border-radius:18px;display:flex;flex-direction:column;justify-content:center}
  .hl b{font-size:28px}.hl span{font-size:12px;line-height:1.8;text-wrap:balance}
  .journey{padding-top:64px}
  .section-head{margin-bottom:26px}
  .section-head h2{font-size:24px}
  .section-head p{font-size:14px;line-height:2;text-wrap:pretty}
  /* vertical timeline: a line runs through the step numbers */
  .steps{grid-template-columns:1fr;padding:0 16px;gap:12px}
  .steps::before{display:block;top:26px;bottom:26px;left:41px;right:auto;width:2px;height:auto;background:linear-gradient(180deg,#6fb4ff00,#6f8fe0 12%,#9b8cff 50%,#6f8fe0 88%,#6fb4ff00);opacity:.55}
  .step button{flex-direction:row;flex-wrap:wrap;text-align:right;align-items:center;gap:0 12px;padding:14px 16px 14px 54px;border-radius:18px}
  .step img{width:56px;height:50px;margin:0}
  .step-num{top:50%;margin-top:-14px;right:auto;left:12px;z-index:1}
  .step-name{flex:1;font-size:16px}
  .step-text{flex-basis:100%;margin:6px 0 8px;font-size:13px;text-align-last:start}
  .faq{padding:50px 16px 64px}
  .faq details{padding:0 16px;border-radius:14px}
  .faq summary{font-size:14.5px;padding:15px 0;line-height:1.8}
  .faq details p{font-size:13.5px}
  .footer-grid{grid-template-columns:1fr;gap:28px;padding:40px 18px 26px}
  .f-brand .wordmark{font-size:32px}
  .meaning{gap:7px}.meaning li{padding:11px 3px 10px}.meaning span{font-size:10.5px}
  .f-trust{display:flex;flex-direction:column;align-items:flex-start}
  .to-top{width:44px;height:44px;left:max(14px,env(safe-area-inset-left));bottom:max(14px,env(safe-area-inset-bottom))}
  .footer-bottom{flex-direction:column;align-items:center;text-align:center}
  .sheet[open]{align-items:flex-end}
  .sheet-card{width:100%;max-height:94svh;border-radius:26px 26px 0 0;animation:sheetup .45s var(--ease)}
  @keyframes sheetup{from{transform:translateY(60%);opacity:.4}}
  .pv{padding:22px 16px 18px}
  .pv-head{padding-left:40px;gap:14px;margin-bottom:16px}
  .pv-icon{width:68px;height:68px;border-radius:18px}
  .pv-tag{font-size:14.5px}
  .pv-body{grid-template-columns:minmax(0,1fr);gap:18px}
  .pv-media{order:2}
  .pv-visual{display:none}
  .lead-row{flex-direction:column}
  .pv-cta{position:sticky;bottom:0;z-index:2;margin:0 -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,#081226 22%)}
  html[data-theme=light] .pv-cta{background:linear-gradient(#f3f6fc00,#f3f6fc 22%)}
  .sheet-card::before{content:'';position:absolute;top:8px;left:50%;width:42px;height:4px;margin-left:-21px;border-radius:4px;background:#ffffff40;z-index:4}
  html[data-theme=light] .sheet-card::before{background:#0f1d3626}
  .pv-head h2{font-size:24px}
  .pv-cta .btn{flex:1;justify-content:center}
  .section-head .eyebrow{font-size:10.5px;letter-spacing:.18em}
  .sheet-nav .sn-label{display:none}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .reveal{opacity:1;transform:none}
}
