/* Editorial homepage and a single contextual pointer. */
.home-cinematic .hero-sticky{background:var(--paper)!important;color:var(--paper)!important}
.hero-surface{position:absolute;inset:110px 20px 18px;background:#171813;border-radius:30px;overflow:hidden;pointer-events:none}
.hero-surface:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 24% 55%,#6b3fd424,transparent 55%)}
.hero-horizon{position:absolute;width:70%;height:100%;left:0;top:22%;transform:perspective(600px) rotateX(66deg) rotateZ(-15deg);background:linear-gradient(#ffffff09 1px,transparent 1px),linear-gradient(90deg,#ffffff09 1px,transparent 1px);background-size:65px 65px;mask-image:radial-gradient(ellipse,#000,transparent 65%)}
html[dir=ltr] .hero-horizon{left:auto;right:0;transform:perspective(600px) rotateX(66deg) rotateZ(15deg)}
.hero-watermark{position:absolute;bottom:-.35em;left:50%;transform:translateX(-50%);font-size:clamp(120px,21vw,360px);font-weight:900;color:#ffffff03;letter-spacing:-.07em;white-space:nowrap;direction:ltr}
.home-cinematic .hero-gridlines{display:none}
.home-cinematic .hero-overlay{padding-inline:clamp(28px,4vw,66px);padding-top:120px;max-width:1600px}
.home-cinematic .hero-story{width:48%;padding-bottom:56px}
.home-cinematic .hero-kicker{font-size:12px;font-weight:500;line-height:1.8;letter-spacing:0;border:0;padding:0;background:none;color:var(--lime);margin:0 0 24px;opacity:1}
.home-cinematic .hero-kicker:before{background:var(--lime);width:6px;height:6px}
.home-cinematic .scene-heading{font-size:clamp(40px,5.4vw,84px);font-weight:600;line-height:1.18;letter-spacing:-.05em}
html[dir=rtl] .home-cinematic .scene-heading{font-size:clamp(42px,5.5vw,86px);line-height:1.44;letter-spacing:-.045em}
.home-cinematic .scene-heading em{color:var(--lime)!important}
.hero-summary{max-width:390px;font-size:14px;line-height:1.85;color:#bebfb3;margin:24px 0 0;text-wrap:pretty}
.home-cinematic .hero-actions{gap:18px!important;margin-top:26px!important;align-items:center}
.home-cinematic .hero-actions .btn-dark{background:var(--lime)!important;color:var(--ink)!important;padding:15px 24px}
.home-cinematic .hero-actions .btn-outline{padding:9px 0;border:0;border-bottom:1px solid #ffffff55;border-radius:0;color:var(--paper)!important;background:none}
.home-cinematic .hero-bottom{inset-inline:clamp(28px,4vw,66px);bottom:40px;border-top:1px solid #ffffff22;padding-top:17px;padding-inline-start:56px}
.home-cinematic .hero-phase{display:none}.home-cinematic .hero-chapters{gap:30px}
.home-cinematic .hero-chapter{border:0;border-radius:0;padding:0 0 8px;opacity:.4;font-size:12px;gap:8px;overflow:visible}
.home-cinematic .hero-chapter.is-active,.home-cinematic .hero-chapter:hover{opacity:1;color:var(--paper);background:none}
.home-cinematic .hero-chapter:after{content:'';height:2px;position:absolute;inset-inline:0;bottom:0;background:var(--lime);transform:scaleX(0);transform-origin:right;transition:transform .3s}
.home-cinematic .hero-chapter.is-active:after{transform:scaleX(1)}.home-cinematic .hero-chapter i{display:none}
.hero-discover{font-size:11px;color:#bebfb3;display:flex;gap:24px;align-items:center}.hero-discover span{font-size:20px;color:var(--lime)}
.scene-caption{position:absolute;z-index:2;bottom:140px;inset-inline-end:10%;width:31%;font-size:10px;letter-spacing:.025em;display:flex;align-items:center;gap:10px;color:#b9bca9;pointer-events:none}
.scene-caption>span:last-child{margin-inline-start:auto;color:var(--lime);font-size:20px}.scene-signal{width:5px;height:5px;background:var(--lime);border-radius:50%}
.home-cinematic .studio-intro{background:var(--paper);color:var(--ink);border-radius:0;margin:0;padding-block:90px 80px}
.home-cinematic .studio-intro .eyebrow{color:var(--violet)}.home-cinematic .studio-intro .section-copy{color:#62655c}
.home-cinematic .studio-intro-head{margin-bottom:45px;align-items:center}.home-cinematic .studio-intro .section-title{font-size:clamp(34px,4.2vw,58px)}
.home-cinematic .studio-proof-grid{grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.home-cinematic .studio-proof-card{min-height:230px;border-radius:0;padding:20px 24px;background:none;color:var(--ink);border-inline-start:1px solid var(--line);transform:none!important}
.home-cinematic .studio-proof-card:first-child{border-inline-start:0}.home-cinematic .studio-proof-card strong{font-size:clamp(52px,6.8vw,92px);margin:0;line-height:1.3}
.home-cinematic .studio-proof-card h3{font-size:13px;line-height:1.7;max-width:210px;margin:10px 0 22px}
.home-cinematic .proof-link{font-size:11px;border:0;padding:0;color:#666a5c}.home-cinematic a.studio-proof-card:hover .proof-link{color:var(--violet)}
.home-cinematic #work{border-radius:32px;background:#171813}.home-cinematic .portfolio-note{font-size:15px}
.home-cinematic .marquee{margin-top:40px;background:var(--ink);color:var(--paper);border:0}.home-cinematic .marquee b{color:var(--lime)}
.studio-cursor{position:fixed;top:0;left:0;z-index:11500;pointer-events:none!important;opacity:0;contain:layout style;will-change:transform;transition:opacity .12s;direction:ltr}
.studio-cursor.is-visible{opacity:1}.studio-cursor-core{display:flex;align-items:center;gap:9px;transform-origin:3px 3px;transition:transform .18s}
.studio-cursor-arrow{width:25px;height:30px;flex:none;filter:drop-shadow(0 2px 3px #0004);overflow:visible}
.studio-cursor-arrow path{fill:var(--violet);stroke:var(--paper);stroke-width:1.5;stroke-linejoin:round;transition:fill .2s}
.studio-cursor-label{background:var(--lime);color:#14150f;font:700 11px Cairo,sans-serif;white-space:nowrap;padding:9px 16px;border-radius:30px;opacity:0;transform:translate(-4px,10px) scale(.85);transition:transform .22s,opacity .18s;box-shadow:0 3px 16px #0002}
.studio-cursor[data-mode=project] .studio-cursor-arrow path,.studio-cursor[data-mode=action] .studio-cursor-arrow path{fill:var(--lime);stroke:var(--ink)}
.studio-cursor[data-mode]:not([data-mode=default]) .studio-cursor-label{opacity:1;transform:translate(0,10px) scale(1)}
.studio-cursor.is-pressed .studio-cursor-core{transform:scale(.82) rotate(-8deg)}
@media(hover:hover) and (pointer:fine) and (min-width:768px) and (prefers-reduced-motion:no-preference){html.has-studio-cursor,html.has-studio-cursor *{cursor:none!important}html.has-studio-cursor input,html.has-studio-cursor textarea,html.has-studio-cursor [contenteditable=true]{cursor:text!important}html.has-studio-cursor select{cursor:auto!important}}
@media(max-width:1180px){.home-cinematic .hero-story{width:49%}.home-cinematic .hero-actions{gap:12px!important}.home-cinematic .hero-actions .btn{font-size:11px}.home-cinematic .scene-heading{font-size:4.8vw}html[dir=rtl] .home-cinematic .scene-heading{font-size:5.2vw}.home-cinematic .hero-kicker{font-size:11px}.hero-summary{font-size:13px}}
@media(max-height:750px) and (min-width:768px){.home-cinematic .hero-kicker{margin-bottom:16px}.hero-summary{margin-top:15px;font-size:12px;max-width:350px}.home-cinematic .hero-story{padding-bottom:35px}.home-cinematic .hero-actions{margin-top:18px!important}.home-cinematic .scene-heading{font-size:4.4vw}html[dir=rtl] .home-cinematic .scene-heading{font-size:4.9vw}.scene-caption{bottom:120px}}
@media(max-width:767px){
 .hero-surface{inset:95px 10px 12px;border-radius:24px}.home-cinematic .hero-overlay{padding:120px 28px 0;justify-content:flex-start}
 .home-cinematic .hero-story{width:100%;padding:0}.home-cinematic .hero-kicker{font-size:10px;margin:0 0 12px}
 .home-cinematic .scene-heading{font-size:clamp(31px,7.8vw,49px);line-height:1.15}html[dir=rtl] .home-cinematic .scene-heading{font-size:clamp(32px,8.6vw,52px);line-height:1.35}
 .hero-summary{font-size:11px;line-height:1.75;margin:12px 0 0;max-width:360px}
 .home-cinematic .hero-actions{margin-top:15px!important;gap:16px!important}.home-cinematic .hero-actions .btn{font-size:10px}.home-cinematic .hero-actions .btn-dark{padding:10px 15px}
 .home-cinematic .hero-bottom{inset-inline:28px;bottom:80px;padding:12px 0 0;border-top:1px solid #ffffff22}.home-cinematic .hero-chapters{gap:14px}.home-cinematic .hero-chapter{font-size:10px;justify-content:flex-start;flex:none;gap:7px;padding-bottom:6px}.home-cinematic .hero-chapter span{font-size:8px}.hero-discover,.scene-caption{display:none}
 .home-cinematic .studio-intro{padding:60px 0}.home-cinematic .studio-intro-head{margin-bottom:30px}.home-cinematic .studio-intro .section-title{font-size:34px}.home-cinematic .studio-proof-grid{grid-template-columns:1fr 1fr}
 .home-cinematic .studio-proof-card{grid-column:auto!important;min-height:190px;padding:20px 16px}.home-cinematic .studio-proof-card:nth-child(3){border-inline-start:0}.home-cinematic .studio-proof-card:nth-child(n+3){border-top:1px solid var(--line)}.home-cinematic .studio-proof-card strong,.home-cinematic .studio-proof-card.proof-1 strong{font-size:60px}.home-cinematic .studio-proof-card h3{font-size:11px;line-height:1.7;margin-bottom:16px}.home-cinematic .proof-link{font-size:9px}
 .home-cinematic #work{border-radius:24px}.studio-cursor{display:none!important}
}
@media(max-height:710px) and (max-width:767px){.home-cinematic .hero-overlay{padding-top:115px}.home-cinematic .hero-summary{display:none}.home-cinematic .hero-kicker{margin-bottom:9px}.home-cinematic .scene-heading{font-size:7.4vw}html[dir=rtl] .home-cinematic .scene-heading{font-size:8vw}.home-cinematic .hero-actions{margin-top:12px!important}}
@media(prefers-reduced-motion:reduce){.studio-cursor{display:none!important}.home-cinematic .hero-3d.is-static .hero-sticky{min-height:700px}.home-cinematic .hero-chapters{display:none}.hero-horizon{transform:none!important}}
.service-directory{margin-top:44px}.service-directory h3{font-size:16px;font-weight:500;margin:0 0 20px}.service-directory nav{display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.service-directory nav a{display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid #8885;padding:17px 0;font-size:13px;color:inherit;transition:color .2s}.service-directory nav a:hover{color:var(--violet)}.dark .service-directory nav a:hover{color:var(--lime)}.service-detail-link{display:inline-flex;margin-inline-start:16px;margin-top:18px;font-size:12px}.service-directory h2{font-size:clamp(24px,3vw,40px);margin-bottom:28px}
.service-hero{padding-top:145px;padding-bottom:80px}.breadcrumbs{display:flex;gap:14px;align-items:center;font-size:12px;margin-bottom:44px;color:#676b5e;flex-wrap:wrap}.breadcrumbs a:hover{color:var(--violet)}
.service-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:6vw;align-items:center}.service-hero h1{font-size:clamp(34px,4.1vw,62px);font-weight:650;line-height:1.22;letter-spacing:-.04em;margin:20px 0 22px}html[dir=rtl] .service-hero h1{line-height:1.5;font-size:clamp(32px,3.9vw,58px)}
.service-promise{font-size:20px;color:var(--violet);margin-bottom:15px}.service-hero .section-copy{font-size:16px}.service-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:30px}.service-actions .inline-link{font-size:12px}
.service-hero-art{margin:0;padding:20px;border-radius:26px;background:#e9e6df;transform:perspective(1200px) rotateY(-4deg) rotateZ(1deg)}html[dir=rtl] .service-hero-art{transform:perspective(1200px) rotateY(4deg) rotateZ(-1deg)}
.service-browser-bar{display:flex;justify-content:space-between;direction:ltr;font-size:12px;margin-bottom:14px}.service-browser-bar>span:last-child{font-size:8px;color:var(--violet);letter-spacing:3px}.service-hero-art img{display:block;width:100%;height:340px;object-fit:cover;object-position:top;border-radius:10px}.service-hero-art figcaption{font-size:11px;line-height:1.8;margin-top:14px;color:#62665a}
.service-scope{background:#171813;color:var(--paper);border-radius:32px}.service-scope h2,.service-questions h2,.service-trust h2{font-size:clamp(26px,3vw,42px);line-height:1.5;margin:0 0 26px}.service-fit{display:grid;grid-template-columns:1fr 1fr;gap:7vw;border-bottom:1px solid #ffffff22;padding-bottom:50px;margin-bottom:50px}.service-fit p{color:#bdc0b4;font-size:17px;line-height:1.9}
.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.scope-grid article{padding:26px;border:1px solid #ffffff22;border-radius:22px}.scope-number{display:block;color:var(--lime);font-size:36px;line-height:1.4;margin-bottom:30px}.scope-grid p{font-size:16px;line-height:1.9;color:#dedfd5}
.service-questions{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw}.service-questions>div>p:last-child{font-size:15px;color:#62665a;line-height:1.9}.service-faq details{border-bottom:1px solid var(--line);padding:24px 0}.service-faq details:first-child{border-top:1px solid var(--line)}.service-faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:18px;list-style:none;cursor:pointer;font-weight:600}.service-faq summary::-webkit-details-marker{display:none}.service-faq summary span{flex:none;font-size:24px;color:var(--violet);transition:transform .25s}.service-faq details[open] summary span{transform:rotate(45deg)}.service-faq details p{padding-top:20px;font-size:16px;line-height:1.9;color:#62665a}
.service-trust{padding:35px 40px;border-radius:25px;background:#e9e6df;display:flex;align-items:center;justify-content:space-between;gap:40px}.service-trust h2{font-size:25px;margin-bottom:14px}.service-trust p{font-size:15px;line-height:1.9;max-width:660px}.service-trust .btn{flex-shrink:0}
@media(max-width:900px){.service-hero-grid{grid-template-columns:1fr;gap:35px}.service-hero-art{max-width:650px;transform:none!important}.service-hero h1{max-width:750px}.service-questions{grid-template-columns:1fr}.service-fit{gap:30px}.scope-grid{gap:10px}.scope-grid article{padding:20px}.service-trust{flex-wrap:wrap}}
@media(max-width:767px){.service-directory nav{grid-template-columns:1fr}.service-directory nav a{font-size:12px;padding:16px 0}.service-detail-link{margin-inline-start:0;display:flex}.service-hero{padding-top:122px;padding-bottom:55px}.breadcrumbs{margin-bottom:24px;font-size:11px}.service-hero h1,html[dir=rtl] .service-hero h1{font-size:33px}.service-hero .section-copy{font-size:15px}.service-promise{font-size:18px}.service-hero-art{padding:15px}.service-hero-art img{height:245px}.service-fit,.scope-grid{grid-template-columns:1fr}.service-fit{gap:0;padding-bottom:30px;margin-bottom:30px}.scope-grid article{display:grid;grid-template-columns:40px 1fr;gap:18px}.scope-number{font-size:25px;margin:0}.scope-grid p{font-size:15px}.service-scope{border-radius:24px}.service-questions{gap:25px}.service-faq summary{font-size:16px}.service-faq details p{font-size:15px}.service-trust{padding:24px;gap:24px}.service-trust h2{font-size:23px}.service-directory{margin-top:30px}}
@media(prefers-reduced-motion:reduce){.service-hero-art{transform:none!important}.studio-cursor *{transition:none!important}}
.client-work{background:#171813;color:var(--paper);border-radius:32px}.client-work-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:7vw;align-items:end;margin-bottom:48px}.client-work .eyebrow{color:var(--lime)}.client-work .section-title{font-size:clamp(35px,4vw,58px)}.client-work .section-copy{color:#bfc2b5;font-size:15px}.client-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px 24px;perspective:1400px}.client-grid .client-card{padding:0;border-radius:22px;background:transparent;min-height:0;height:auto;grid-column:auto;box-shadow:none;overflow:visible}.client-card:first-child{grid-column:1/-1}.client-grid .work-frame{height:auto;aspect-ratio:1.9;border-radius:20px;transform:none!important;background:#e6e4dd;overflow:hidden;border:1px solid #ffffff22}.client-grid .work-frame img{width:100%;height:100%;object-fit:contain;object-position:center}.client-grid .client-card:first-child .work-frame{aspect-ratio:2.3}.client-grid .work-meta{height:auto;min-height:70px;padding:14px 3px;align-items:center}.client-grid .work-meta h3{margin:0;line-height:1.4}.client-grid .work-meta b{font-size:21px;font-weight:600;color:var(--paper)}.client-grid .work-meta span{font-size:11px;color:#bbbfb0;direction:inherit}.client-grid .work-meta i{font-style:normal;display:inline-grid;place-items:center;border:1px solid #ffffff33;border-radius:50%;width:34px;height:34px;margin-inline-start:10px;font-size:18px;color:var(--lime)}.client-more{color:var(--lime);font-size:13px;margin-top:30px}.home-cinematic #visual-work{margin-top:24px;border-radius:32px}
@media(max-width:767px){.client-work{border-radius:24px}.client-work-heading{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.client-work .section-title{font-size:33px}.client-grid{grid-template-columns:1fr;gap:20px}.client-grid .client-card,.client-grid .client-card:first-child{grid-column:auto;margin:0}.client-grid .work-frame,.client-grid .client-card:first-child .work-frame{aspect-ratio:1.75;border-radius:15px}.client-grid .work-meta{min-height:65px;padding:12px 0}.client-grid .work-meta b{font-size:17px}.client-grid .work-meta span{font-size:9px}.client-grid .work-meta i{width:28px;height:28px;font-size:15px;margin-inline-start:6px}.client-grid .work-frame img{object-fit:contain}}
.studio-cursor-label{position:absolute;top:0;left:28px}.studio-cursor[data-edge=right] .studio-cursor-label{left:auto;right:8px}.studio-cursor[data-bottom=true] .studio-cursor-label{top:-50px}
.brand-belt{padding:58px 0 36px;overflow:hidden;background:var(--paper);border-bottom:1px solid var(--line)}.brand-belt-heading{display:flex;justify-content:space-between;gap:30px;align-items:center;margin-bottom:30px}.brand-belt-heading .eyebrow{font-size:10px;margin-bottom:12px;color:var(--violet)}.brand-belt-heading h2{font-size:clamp(24px,2.8vw,38px);line-height:1.5;font-weight:600;margin:0 0 10px}.brand-belt-heading p:last-child{font-size:11px;line-height:1.8;color:#6a6e60;max-width:600px}.brand-pause{display:flex;align-items:center;gap:12px;padding:11px 16px;font:500 11px Cairo;background:transparent;border:1px solid var(--line);border-radius:50px;white-space:nowrap;color:var(--ink)}.brand-pause>span:first-child{font-size:14px;color:var(--violet)}
.brand-rail{direction:ltr;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.brand-track{display:flex;width:max-content;animation:brand-conveyor 155s linear infinite;animation-play-state:paused;will-change:transform}.brand-copy{display:flex;flex-shrink:0;width:max-content;align-items:center}.brand-cell{display:flex;align-items:center;justify-content:space-between;gap:40px;width:260px;height:130px;padding-inline:24px;flex-shrink:0}.brand-cell img{display:block;width:170px;height:70px;object-fit:contain;filter:grayscale(1);mix-blend-mode:multiply;opacity:.8;transition:filter .3s,opacity .3s}.brand-cell.brand-ink img{filter:brightness(0);opacity:.76}.brand-cell:hover img{filter:none;opacity:1}.brand-cell.brand-ink:hover img{filter:brightness(.3)}.brand-separator{font-size:16px;color:var(--violet);width:10px;flex-shrink:0}.rail-1 .brand-track{animation-direction:reverse;animation-duration:170s}.brand-belt.is-in-view:not(.is-paused) .brand-track{animation-play-state:running}.brand-belt:focus-within .brand-track{animation-play-state:paused!important}
@media(hover:hover){.brand-belt:hover .brand-track{animation-play-state:paused!important}}
@keyframes brand-conveyor{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(max-width:767px){.brand-belt{padding:36px 0 22px}.brand-belt-heading{gap:15px;align-items:flex-start;flex-direction:column;margin-bottom:18px}.brand-belt-heading h2{font-size:25px}.brand-belt-heading p:last-child{font-size:10px;max-width:335px}.brand-pause{font-size:10px;padding:8px 13px}.brand-cell{width:200px;height:100px;padding-inline:16px;gap:26px}.brand-cell img{width:135px;height:62px}.brand-track{animation-duration:130s}.rail-1 .brand-track{animation-duration:145s}}
@media(prefers-reduced-motion:reduce){.brand-track{animation:none!important;will-change:auto}.brand-copy[aria-hidden=true]{display:none}.brand-rail{overflow-x:auto;mask-image:none}.brand-pause{display:none}.brand-cell img{transition:none}}
html:not(.js) .brand-track{animation:none;will-change:auto}html:not(.js) .brand-copy[aria-hidden=true]{display:none}html:not(.js) .brand-rail{overflow-x:auto}
/* The pause control governs both rails; keyboard focus pauses only a rail being read. */
.brand-belt:focus-within.is-in-view:not(.is-paused) .brand-track{animation-play-state:running!important}
.brand-belt.is-paused .brand-track,.brand-belt .brand-rail:focus-within .brand-track{animation-play-state:paused!important}
@media(hover:hover){.brand-belt:hover.is-in-view:not(.is-paused) .brand-track{animation-play-state:running!important}.brand-belt .brand-rail:hover .brand-track{animation-play-state:paused!important}}
