@font-face{font-family:Vazirmatn;src:url('assets/Vazirmatn-Variable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:PlexArabic;src:url('assets/IBMPlexSansArabic-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:PlexArabic;src:url('assets/IBMPlexSansArabic-Bold.woff2') format('woff2');font-weight:700 900;font-display:swap}
:root{--rtl-font:Vazirmatn,Arial,sans-serif}html[lang=ar]{--rtl-font:PlexArabic,Vazirmatn,Arial,sans-serif}html{scroll-padding-top:100px}
[dir=rtl] body,[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3,[dir=rtl] h4,[dir=rtl] p,[dir=rtl] button,[dir=rtl] a:not(.logo),[dir=rtl] select,[dir=rtl] .eyebrow,[dir=rtl] .index,[dir=rtl] .sample-tag,[dir=rtl] .section-heading span,[dir=rtl] .hero .description,[dir=rtl] .portal-copy p,[dir=rtl] .sample-card p,[dir=rtl] .project-caption h3,[dir=rtl] .about-copy p,[dir=rtl] .service-grid h3,[dir=rtl] .process-grid h3{font-family:var(--rtl-font);letter-spacing:0}
[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3{font-weight:900;line-height:1.55}[lang=ar] h1,[lang=ar] h2,[lang=ar] h3{font-weight:700}
[dir=rtl] .hero{direction:rtl}[dir=rtl] .hero-copy{margin-inline-end:auto;direction:rtl;text-align:right}[dir=rtl] .hero-art{right:auto;left:0;direction:ltr}[dir=rtl] .hero h1{font-family:var(--rtl-font);font-size:clamp(48px,6.3vw,99px);line-height:1.5;letter-spacing:-.025em}[dir=rtl] .hero h1>span:last-child{font-size:.84em}[dir=rtl] .hero .scroll{left:48%;right:auto}[dir=rtl] .about-copy,[dir=rtl] .service-grid,[dir=rtl] .portal-grid,[dir=rtl] .sample-grid,[dir=rtl] .branch-grid{direction:rtl;text-align:right}
[dir=rtl] .tool-grid article{direction:ltr}[dir=rtl] .tool-grid h3{font-family:Arial,sans-serif;line-height:1.3;font-weight:400}[dir=rtl] .ai-skill{direction:rtl}[dir=rtl] .ai-skill:after{transform-origin:right}[dir=rtl] .section-heading .rule{transform-origin:right}[dir=rtl] .play{padding-left:3px}[dir=rtl] .actions{direction:rtl}[dir=rtl] .channel-links{direction:ltr}[dir=rtl] .contact-links,[dir=rtl] .footer-social{direction:ltr;align-items:flex-start}[dir=rtl] .footer-navigation{align-items:flex-start}[dir=rtl] .portal-art{direction:ltr}[dir=rtl] .portal-art>span{right:auto;left:10%}[dir=rtl] .service-panel .service-symbol{font-family:Anton,sans-serif;direction:ltr;left:26px;right:auto}
[dir=rtl] .hero h1 em{color:var(--cream);-webkit-text-stroke:0}[dir=rtl] .hero h1 em:hover{color:transparent;-webkit-text-stroke:1px var(--cream)}
/* The incoming page starts under the same opaque cover as the outgoing page. */
.arrival-pending .page-transition{visibility:visible;opacity:1;pointer-events:auto}.arrival-pending .transition-dots{transform:scale(1.5);opacity:.2}.arrival-pending .page{opacity:0}.arrival-reveal .page-transition{animation:arrival-cover .8s cubic-bezier(.4,0,.2,1) forwards}.arrival-reveal .page{opacity:1;animation:arrival-content .85s cubic-bezier(.16,1,.3,1) both}.arrival-reveal .page-transition span{animation:arrival-label .4s both}.page-entering .page{animation:none}.arrival-reveal.page-entering .page{animation:arrival-content .85s cubic-bezier(.16,1,.3,1) both}
@keyframes arrival-cover{0%,12%{opacity:1;clip-path:inset(0)}100%{opacity:0;clip-path:inset(0 0 100% 0)}}@keyframes arrival-content{from{opacity:.35;transform:translateY(25px);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}@keyframes arrival-label{to{opacity:0;transform:translateY(-10px)}}
/* Whole-glass effects share the PNG's coordinate system and exclude its bezel. */
.crt-surface{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;overflow:hidden}.tv-screen-name{background:none;z-index:2;clip-path:none}.glass-sweep{animation:glass-scan 7s linear infinite}.glass-noise{animation:glass-static 9s linear infinite}.glass-tear{animation:glass-tear 9s linear infinite}.glass-pulse{animation:glass-pulse 9s linear infinite}.modal-open .crt-surface *,.scene-offscreen .crt-surface *{animation-play-state:paused}
@keyframes glass-scan{from{transform:translateY(-100px)}to{transform:translateY(800px)}}@keyframes glass-static{0%,79%,83%,100%{opacity:.28}80%{opacity:.55}81%{opacity:.35}82%{opacity:.5}}@keyframes glass-tear{0%,79%,83%,100%{opacity:0;transform:none}80%{opacity:.1;transform:translateY(80px)}81%{opacity:.06;transform:translateY(-120px)}82%{opacity:.09;transform:translateY(180px)}}@keyframes glass-pulse{0%,79%,83%,100%{opacity:0}80%{opacity:.035}81%{opacity:.01}82%{opacity:.025}}
.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.service-panel{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:350px;padding:30px;border:1px solid var(--line);overflow:hidden;background:linear-gradient(140deg,#1a1815,#10100f);transition:border-color .3s,background .3s}.service-panel:first-child{grid-column:1/-1;min-height:300px}.service-panel:before{content:'';position:absolute;inset:0;background-image:radial-gradient(#ff293450 1px,transparent 1.5px);background-size:7px 7px;mask-image:linear-gradient(100deg,transparent 40%,#000);opacity:.3;pointer-events:none}.service-panel .service-symbol{position:absolute;top:24px;right:26px;font:64px Anton,sans-serif;color:#ff293480;direction:ltr}.service-panel h3{font-size:clamp(28px,3.5vw,46px);margin:48px 0 18px;max-width:85%}.service-panel p{max-width:650px;font-size:16px;line-height:1.9;margin:0 0 24px;color:var(--muted);position:relative}.service-panel-link{font:12px/1.8 monospace;border-bottom:1px solid var(--red);margin-top:auto;position:relative}.service-panel:hover{border-color:var(--red);background:#211917}.service-detail-intro{padding:40px 0 55px}.service-detail-intro h1{font-size:clamp(50px,7vw,100px);line-height:1.35}.service-lead{max-width:820px;line-height:1.95;color:var(--muted);font-size:18px}.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;font:12px/1.8 Arial,sans-serif;letter-spacing:0;margin-bottom:48px;color:var(--muted)}.breadcrumbs a:hover{color:var(--cream)}.branch-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start;margin-top:30px}.branch-card{border:1px solid var(--line);background:#151411}.branch-card summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:30px 1fr 20px;gap:15px;align-items:center;padding:25px;min-height:130px}.branch-card summary::-webkit-details-marker{display:none}.branch-card h3{font:23px/1.5 Anton,sans-serif;margin:0;letter-spacing:0}.branch-toggle{font:30px/1 monospace;color:var(--red);transition:transform .3s}.branch-card[open]{border-color:var(--red)}.branch-card[open] .branch-toggle{transform:rotate(45deg)}.branch-body{padding:0 25px 26px}.branch-body p{font-size:16px;line-height:1.95;color:var(--muted)}.branch-body h4{font:12px/1.8 monospace;letter-spacing:1px;margin:22px 0 12px}.branch-body ul{padding-inline-start:20px;line-height:2;color:var(--muted);font-size:14px}.branch-card[open] .branch-body{animation:branch-enter .4s cubic-bezier(.16,1,.3,1)}@keyframes branch-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}[dir=rtl] .branch-card h3{font-family:var(--rtl-font);font-weight:800;font-size:22px}[dir=rtl] .service-panel h3{font-family:var(--rtl-font);font-size:34px}[dir=rtl] .branch-body h4,[dir=rtl] .branch-body li,[dir=rtl] .service-panel-link{font-family:var(--rtl-font)}
/* A narrow film-chain rail visualizes actual scroll position. */
.scroll-chain{position:fixed;right:5px;top:24vh;height:50vh;width:22px;z-index:8;pointer-events:none;direction:ltr;color:var(--muted)}.chain-window{height:calc(100% - 32px);position:relative;overflow:hidden;border-inline:1px solid #625e5338;width:16px;margin:auto}.chain-links{position:absolute;inset:-100px 0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='36' viewBox='0 0 14 36'%3E%3Crect x='3' y='2' width='8' height='19' rx='4' fill='none' stroke='%23eee3cd' stroke-opacity='.48' stroke-width='1'/%3E%3Crect x='4' y='17' width='6' height='17' rx='3' fill='none' stroke='%23ff2934' stroke-opacity='.5' stroke-width='1'/%3E%3C/svg%3E");background-position:center;transform:translateY(var(--chain-offset,0px));will-change:transform}.chain-needle{position:absolute;top:calc(var(--page-progress,0)* (100% - 18px));height:18px;left:0;right:0;border-block:1px solid var(--red);background:#ff293425;box-shadow:0 0 9px #ff293433}.chain-percent{display:block;font:9px/1 monospace;text-align:center;margin-top:10px;color:var(--cream)}.chain-label{position:absolute;right:21px;top:0;writing-mode:vertical-rl;font:8px monospace;letter-spacing:2px;opacity:.5}.scroll-chain:after{content:'';position:absolute;bottom:0;left:8px;width:4px;height:4px;border-radius:50%;background:var(--red)}
@media(max-width:1150px){.scroll-chain{right:2px;width:15px}.chain-label{display:none}.chain-window{width:12px}.service-panel .service-symbol{font-size:50px}}
@media(max-width:850px){[dir=rtl] .hero-art{left:auto;right:auto;margin:20px auto 0}[dir=rtl] .hero-copy{margin:0}[dir=rtl] .hero h1{font-size:clamp(50px,10vw,80px)}}
@media(max-width:650px){html{scroll-padding-top:86px}.scroll-chain{top:auto;bottom:10px;right:8px;height:68px;width:15px}.chain-window{height:48px}.chain-percent{font-size:8px;margin-top:4px}.scroll-chain:after{display:none}.service-grid,.branch-grid{grid-template-columns:1fr}.service-panel:first-child{grid-column:auto;min-height:300px}.service-panel{padding:24px;min-height:320px}.service-panel p{font-size:15px}.service-panel h3{font-size:30px}.service-detail-intro{padding:25px 0 35px}.service-detail-intro h1{font-size:46px}.service-lead{font-size:16px}.breadcrumbs{margin-bottom:35px;gap:9px}.branch-card summary{padding:20px;gap:12px;min-height:115px}.branch-card h3{font-size:22px}.branch-body{padding:0 20px 22px}.branch-body p{font-size:15px}[dir=rtl] .hero h1{font-size:14vw;line-height:1.65}[dir=rtl] .hero h1>span:last-child{font-size:.84em}[dir=rtl] .service-panel h3{font-size:28px}[dir=rtl] .page-intro h1,[dir=rtl] .service-detail-intro h1{font-size:40px}.footer-bottom{text-align:start}}
@media(prefers-reduced-motion:reduce){.arrival-pending .page{opacity:1}.arrival-pending .page-transition{display:none}.arrival-reveal .page{animation:none}.crt-surface *{animation:none}.chain-links{transform:none;will-change:auto}.branch-card[open] .branch-body{animation:none}}
