
/* Layout: white editorial sections framed by one dark band per page; the logo's parallel bars are the single recurring motif. Tokens mirror the Figma variables. Single light look per client brief. */
:root{
  --primary:#493D3F; --deep:#261F21; --stone:#A39A92; --sand:#DCD3C9; --ink:#1F191B; --ink2:#615859;
  --white:#FFFFFF; --tint:#F7F4F1; --line:#E9E4DF; --err:#A2352B; --ok:#3F6B4F;
  --ease:cubic-bezier(.19,.8,.12,1);
  color-scheme:light;
}
body{background:var(--white);color:var(--ink);margin:0}
#app{--d:"Alexandria","Almarai",Tahoma,sans-serif;--b:"Almarai",Tahoma,sans-serif;font-family:var(--b);font-size:17px;line-height:1.9}
#app[lang=en]{--d:"Alexandria","IBM Plex Sans",system-ui,sans-serif;--b:"IBM Plex Sans",system-ui,sans-serif;font-size:16px;line-height:1.65}
#app[lang=zh-CN]{--d:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;--b:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;font-size:16px;line-height:1.85}
.wrap{max-width:1280px;margin-inline:auto;padding-inline:40px;box-sizing:border-box}
a{color:inherit}
h1,h2,h3,.disp{margin:0;color:var(--primary);font-family:var(--d);font-weight:300;text-wrap:balance}
#app[lang=ar] h1,#app[lang=ar] .dxl{font-weight:200}
#app[lang=en] h1,#app[lang=en] h2{letter-spacing:-.02em}
.dxl{font-size:clamp(2.4rem,5.6vw,5.2rem);line-height:1.22}
#app[lang=en] .dxl{line-height:1.04}
#app[lang=zh-CN] .dxl{font-size:clamp(2.1rem,4.6vw,4.2rem);line-height:1.3;font-weight:300}
.dl{font-size:clamp(1.9rem,3.8vw,3.6rem);line-height:1.3}
#app[lang=en] .dl{line-height:1.1}
h2{font-size:clamp(1.6rem,2.8vw,2.6rem);line-height:1.35}
h3{font-family:var(--b);font-weight:700;font-size:1.1rem;line-height:1.5}
#app[lang=en] h3,#app[lang=zh-CN] h3{font-weight:500}
.lead{font-size:1.15rem;color:var(--ink2);max-width:60ch;margin:0;font-weight:300}
#app[lang=zh-CN] .lead{font-weight:400}
.body{color:var(--ink2);max-width:62ch;margin:0}
.kicker{display:flex;align-items:center;gap:12px;margin:0;font-size:.8rem;color:var(--stone);font-weight:700}
.kicker::after{content:"";width:40px;height:1px;background:currentColor}
#app[lang=en] .kicker{text-transform:uppercase;letter-spacing:.14em;font-weight:500;font-size:.72rem}
.kicker.light{color:var(--sand)}
.crumb{font-size:.82rem;color:var(--ink2);margin:0}
.crumb a{text-decoration:none}.crumb a:hover{text-decoration:underline}
.tag{display:inline-block;font-size:.74rem;color:var(--ink2);border:1px dashed var(--stone);padding:.2rem .65rem;line-height:1.6}
.note{display:block;font-size:.85rem;color:var(--ink2);border:1px dashed var(--stone);padding:.8rem 1rem}
.link{font-size:.92rem;font-weight:700;color:var(--primary);text-decoration:none;background:linear-gradient(currentColor,currentColor) no-repeat 0 100%/100% 1px;padding-bottom:3px;transition:background-size .45s var(--ease);cursor:pointer}
[dir=rtl] .link{background-position:100% 100%}
.link:hover{background-size:0 1px}
:focus-visible{outline:2px solid var(--stone);outline-offset:3px}
.sec{padding-block:120px}
.tint{background:var(--tint)}
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-bottom:56px}
.head>div{display:grid;gap:14px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font:inherit;font-weight:700;font-size:.93rem;padding:.95rem 1.8rem;border:1px solid var(--primary);cursor:pointer;text-decoration:none;position:relative;isolation:isolate;overflow:hidden;white-space:nowrap;transition:color .45s var(--ease),border-color .45s}
#app[lang=en] .btn,#app[lang=zh-CN] .btn{font-weight:500}
.btn::after{content:"";position:absolute;inset:0;z-index:-1;transform:scaleX(0);transform-origin:var(--o,left);transition:transform .45s var(--ease)}
[dir=rtl] .btn{--o:right}
.btn:hover::after{transform:scaleX(1)}
.btn .ar{transition:transform .45s var(--ease)}
.btn:hover .ar{transform:translateX(4px)}[dir=rtl] .btn:hover .ar{transform:translateX(-4px)}
.btn.p{background:var(--primary);color:var(--white)}.btn.p::after{background:var(--deep)}
.btn.s{background:transparent;color:var(--primary)}.btn.s::after{background:var(--primary)}.btn.s:hover{color:var(--white)}
.btn.d{background:var(--white);color:var(--primary);border-color:var(--white)}.btn.d::after{background:var(--sand)}
.btn.sm{padding:.55rem 1.1rem;font-size:.84rem}
.btns{display:flex;gap:14px;flex-wrap:wrap}

/* header */
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);transition:transform .35s var(--ease)}
.top.away{transform:translateY(-100%)}
.top-in{display:flex;align-items:center;gap:32px;padding-block:14px}
.logo{display:block;flex:none;color:var(--primary);cursor:pointer}
.logo svg{width:170px;height:auto;display:block}
.nav{display:flex;gap:26px;flex:1;font-size:.9rem;flex-wrap:wrap}
.nav a{text-decoration:none;color:var(--ink2);cursor:pointer;padding-block:4px;background:linear-gradient(var(--primary),var(--primary)) no-repeat 50% 100%/0 1px;transition:background-size .35s var(--ease),color .2s}
.nav a:hover,.nav a.on{color:var(--primary);background-size:100% 1px}
.acts{display:flex;align-items:center;gap:18px}
.langs{display:flex;gap:4px}
.langs button{font:inherit;font-size:.78rem;background:none;border:0;padding:.3rem .45rem;cursor:pointer;color:var(--ink2)}
.langs button[lang=en]{font-family:"IBM Plex Sans",sans-serif}.langs button[lang=zh-CN]{font-family:"Noto Sans SC",sans-serif}.langs button[lang=ar]{font-family:"Almarai",sans-serif}
.langs .ls{display:none}.langs button{white-space:nowrap}
.langs button[aria-pressed=true]{color:var(--primary);font-weight:700;box-shadow:inset 0 -1px 0 currentColor}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer}
.burger i{display:block;width:22px;height:1.5px;background:var(--primary);margin-block:5px}.burger i:last-child{width:14px}
.drawer{display:none}

/* motif */
.bars{display:grid;gap:9px;justify-items:end;pointer-events:none}
[dir=ltr] .bars{justify-items:start}
.bars i{display:block;height:6px;background:currentColor;transform-origin:var(--o,right);animation:bar .7s var(--ease) both}
[dir=ltr] .bars i{--o:left}
.bars i:nth-child(1){width:150px}.bars i:nth-child(2){width:120px;animation-delay:.08s}.bars i:nth-child(3){width:150px;animation-delay:.16s}.bars i:nth-child(4){width:90px;animation-delay:.24s}.bars i:nth-child(5){width:176px;animation-delay:.32s}
@keyframes bar{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* images */
.img{position:relative;overflow:hidden;background:var(--sand)}
.img>img,.img>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.img .tmp{display:none!important;position:absolute;bottom:12px;inset-inline-start:12px;background:var(--white);color:var(--ink2);font-size:.68rem;padding:.2rem .55rem;line-height:1.5;z-index:2}
.settle{animation:settle 2.4s var(--ease) both}
@keyframes settle{from{transform:scale(1.07)}to{transform:scale(1)}}

/* hero variants */
.h-framed{position:relative;padding-top:40px;padding-bottom:24px}
.h-framed .img{width:72%;aspect-ratio:1040/620;max-width:100%}
.h-framed .bars{position:absolute;top:72px;inset-inline-end:72px;color:var(--white);z-index:3}
.hero-logo{position:absolute;top:28px;inset-inline-end:28px;width:min(300px,42%);aspect-ratio:334/75;z-index:3;filter:drop-shadow(0 1px 8px rgba(0,0,0,.25))}
.h-framed .img::before{content:"";position:absolute;inset:0 0 auto 0;height:45%;background:linear-gradient(to bottom,rgba(38,31,33,.55),transparent);z-index:1;pointer-events:none}
.h-framed .img{margin-inline-start:auto}
.panel{background:var(--white);display:grid;gap:26px;align-content:start}
.h-framed .panel{position:relative;margin-top:-380px;width:min(700px,60%);margin-inline-end:auto;padding-top:56px;padding-inline-end:56px;z-index:4}
.vt{position:absolute;bottom:16px;inset-inline-end:16px;z-index:5;font:inherit;font-size:.72rem;background:rgba(255,255,255,.9);border:0;padding:.35rem .7rem;cursor:pointer;color:var(--primary)}
.h-split{display:grid;grid-template-columns:1fr 500px;gap:96px;align-items:end;padding-block:56px 96px}
.h-split .img{aspect-ratio:5/6}
.h-split .panel{padding:0}
.h-band{position:relative;padding-bottom:24px}
.h-band .img{height:540px}
.h-band .panel{position:relative;margin-top:-160px;width:min(928px,100%);margin-inline-end:auto;padding:56px 64px 0;box-sizing:border-box;z-index:2}
.h-text{padding-block:72px 88px;position:relative;display:grid;gap:22px}
.h-text .bars{position:absolute;top:96px;inset-inline-end:40px;color:var(--sand)}
.langs-note{font-size:.84rem;color:var(--stone)}

/* service links */
.slinks{display:grid;grid-template-columns:repeat(5,1fr);padding-bottom:32px}
.slinks a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:20px 18px;border-top:1px solid var(--primary);text-decoration:none;color:var(--primary);font-weight:700;cursor:pointer;transition:background .3s}
#app[lang=en] .slinks a,#app[lang=zh-CN] .slinks a{font-weight:500}
.slinks a:last-child{border-color:var(--line);color:var(--ink2)}
.slinks a:hover{background:var(--tint)}
.slinks a span{color:var(--stone)}

/* about */
.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:96px;align-items:start}
.about>div{display:grid;gap:22px}

/* areas */
.areas{display:grid;grid-template-columns:1.2fr 480px;gap:80px;align-items:start}
.alist{list-style:none;margin:0;padding:0;border-top:1px solid var(--primary)}
.alist a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);text-decoration:none;color:var(--primary);font-family:var(--d);font-size:1.35rem;cursor:pointer;transition:padding .45s var(--ease)}
#app[lang=zh-CN] .alist a{font-size:1.2rem}
.alist a .th{display:none;width:56px;height:56px;object-fit:cover;flex:none}
.alist a .ar{color:var(--stone);transition:transform .45s var(--ease),color .3s}
.alist a:hover,.alist a.on{padding-inline-start:14px}
.alist a:hover .ar,.alist a.on .ar{color:var(--primary);transform:translateX(8px)}[dir=rtl] .alist a:hover .ar,[dir=rtl] .alist a.on .ar{transform:translateX(-8px)}
.aframe{position:sticky;top:110px;aspect-ratio:4/5}
.aframe img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:inset(100% 0 0 0);transition:clip-path .8s var(--ease)}
.aframe img.on{clip-path:inset(0 0 0 0);z-index:1}

/* people */
.people{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.person{display:grid;gap:4px;align-content:start;text-decoration:none;cursor:pointer}
.person .img{aspect-ratio:4/5;margin-bottom:12px}
.person .img img{transition:transform 1s var(--ease)}
.person:hover .img img{transform:scale(1.04)}
.person b{font-family:var(--d);font-weight:300;color:var(--primary);font-size:1.3rem}
.person span{color:var(--ink2);font-size:.92rem}
.person small{color:var(--stone);font-size:.84rem}

/* feature */
.feat{display:grid;grid-template-columns:620px 1fr;background:var(--deep);color:var(--white)}
.feat .img{min-height:560px}
.feat .tx{padding:112px 80px;display:grid;gap:26px;align-content:center}
.feat h2{color:var(--white);font-size:clamp(1.9rem,3.4vw,3.2rem);line-height:1.3}
.feat .body{color:var(--sand)}
.ticks{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.18)}
.ticks li{padding-block:14px;border-bottom:1px solid rgba(255,255,255,.18)}

/* steps */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;list-style:none;margin:0;padding:0;position:relative;border-top:1px solid var(--line)}
.steps::before{content:"";position:absolute;top:-1px;inset-inline:0;height:1px;background:var(--primary);transform:scaleX(var(--p,1));transform-origin:var(--o,left)}
[dir=rtl] .steps::before{--o:right}
.steps li{padding-top:28px;display:grid;gap:8px;align-content:start}
.steps .n{font-family:"Alexandria",sans-serif;font-weight:200;color:var(--stone);font-size:3rem;line-height:1}

/* scope */
.scope{display:grid;grid-template-columns:1fr 1fr;column-gap:80px}
.scope div{padding-block:28px;border-top:1px solid var(--primary);display:grid;gap:8px;align-content:start}

/* faq */
.faq{display:grid;grid-template-columns:380px 1fr;gap:96px;align-items:start}
.acc{border-top:1px solid var(--primary)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center;padding-block:22px;cursor:pointer;font-weight:700;color:var(--primary);font-size:1.08rem}
#app[lang=en] .acc summary,#app[lang=zh-CN] .acc summary{font-weight:500}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font-size:1.4rem;color:var(--primary);transition:transform .3s}
.acc details[open] summary::after{content:"−"}
.acc details p{margin:0 0 22px;color:var(--ink2);max-width:64ch}

/* articles */
.arts{list-style:none;margin:0;padding:0;border-top:1px solid var(--primary)}
.arts a{display:grid;grid-template-columns:150px 1fr auto auto;gap:32px;align-items:center;padding-block:26px;border-bottom:1px solid var(--line);text-decoration:none;cursor:pointer;transition:padding .45s var(--ease)}
.arts a:hover{padding-inline-start:12px}
.arts .t{font-family:var(--d);font-weight:300;color:var(--primary);font-size:1.45rem;line-height:1.4}
.arts small{color:var(--ink2);font-size:.84rem}

/* cta band */
.cta{display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;padding-block:88px}
.cta>div{display:grid;gap:10px}
.cta .dl{font-size:clamp(1.7rem,3vw,2.9rem)}

/* contact */
.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:96px;align-items:start}
.contact .tx{display:grid;gap:22px}
.info{display:grid;gap:4px;padding-top:22px;border-top:1px solid var(--line);color:var(--ink2)}
.info b{color:var(--stone);font-size:.8rem}
.form{background:var(--white);padding:48px;display:grid;gap:24px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.fld{display:grid;gap:4px;font-size:.84rem;font-weight:700;color:var(--primary)}
#app[lang=en] .fld,#app[lang=zh-CN] .fld{font-weight:500}
.fld em{font-style:normal;font-weight:400;color:var(--ink2)}
.fld input,.fld select,.fld textarea{font:inherit;font-weight:400;font-size:1rem;color:var(--ink);background:var(--white);border:0;border-bottom:1px solid var(--line);padding:.6rem 0;border-radius:0;width:100%;box-sizing:border-box;transition:border-color .3s}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-bottom:2px solid var(--primary)}
.fld [aria-invalid=true]{border-bottom-color:var(--err)}
.fld .msg{font-weight:400;font-size:.8rem;color:var(--err);min-height:0}
.status{margin:0;font-size:.9rem;padding:.8rem 1rem;display:none}
.status.ok{display:block;background:#EEF3EF;color:var(--ok)}
.status.bad{display:block;background:#F7ECEA;color:var(--err)}
.fine{font-size:.8rem;color:var(--ink2);margin:0}

/* directory / index */
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.chips button{font:inherit;font-size:.86rem;padding:.45rem 1rem;border:1px solid var(--line);background:none;color:var(--primary);cursor:pointer}
.chips button[aria-pressed=true]{background:var(--primary);color:var(--white);border-color:var(--primary)}
.search{border:0;border-bottom:1px solid var(--line);font:inherit;padding:.7rem 0;width:min(560px,100%);margin-bottom:40px;background:none}
.grp{margin-bottom:56px}.grp h3{font-size:1.35rem;margin-bottom:24px;font-family:var(--d);font-weight:300}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.grid4 .person b{font-size:1.1rem}
.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.card{display:grid;gap:10px;text-decoration:none;cursor:pointer;align-content:start}
.card .img{aspect-ratio:4/3}
.card .img img{transition:transform 1s var(--ease)}.card:hover .img img{transform:scale(1.04)}
.card b{display:flex;justify-content:space-between;gap:10px;font-family:var(--d);font-weight:300;font-size:1.3rem;color:var(--primary)}
.card b span{color:var(--stone)}
.card small{color:var(--ink2);font-size:.9rem}

/* profile / article / legal */
.prof{display:grid;grid-template-columns:480px 1fr;gap:96px;align-items:start;padding-block:40px 112px}
.prof .img{aspect-ratio:4/5}
.prof .tx{display:grid;gap:22px}
.meta{display:grid;gap:14px;padding-top:20px;border-top:1px solid var(--line)}
.meta div{display:grid;gap:2px}.meta b{font-size:.78rem;color:var(--stone)}
.art-wrap{display:grid;grid-template-columns:1fr 360px;gap:120px;padding-top:40px;border-top:1px solid var(--primary);margin-top:32px}
.art-body{display:grid;gap:24px;max-width:720px}
.art-body h3{font-family:var(--d);font-weight:300;font-size:1.5rem}
.art-body p{margin:0;color:var(--ink2);font-size:1.1rem}
.side{background:var(--tint);padding:28px;display:grid;gap:14px;align-content:start;position:sticky;top:110px}
.legal{display:grid;gap:0;max-width:820px}
.legal div{padding-block:24px;border-top:1px solid var(--line);display:grid;gap:8px}

/* footer */
.foot{background:var(--deep);color:var(--sand);padding-block:88px 40px;font-size:.88rem}
.foot .q{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;padding-bottom:40px}
.foot .q .dl{color:var(--white);font-size:clamp(2rem,4.5vw,3.6rem)}
.foot .mid{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding-block:28px;border-block:1px solid rgba(255,255,255,.12)}
.foot .mid nav{display:flex;gap:26px;flex-wrap:wrap}.foot a{text-decoration:none;cursor:pointer}.foot a:hover{color:var(--white)}
.foot .logo{color:var(--white)}
.foot .bot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:24px;color:var(--stone)}
.fab{display:none}
.review{position:fixed;bottom:16px;inset-inline-start:16px;z-index:40;background:var(--deep);color:var(--sand);font-size:.72rem;padding:.4rem .8rem;max-width:calc(100% - 32px)}

/* reveal: readable at rest; only items below the fold rise in */
.mo [data-r].pre{transform:translateY(28px)}
.mo [data-r]{transition:transform .8s var(--ease)}

@media (max-width:1100px){
  .nav{display:none}.burger{display:block}.top .acts .btn{display:none}
  .drawer.open{display:grid;gap:6px;padding:12px 20px 24px;border-top:1px solid var(--line)}
  .drawer a{padding:10px 0;text-decoration:none;color:var(--primary);cursor:pointer;border-bottom:1px solid var(--line)}
  .h-split,.about,.areas,.feat,.faq,.contact,.prof,.art-wrap{grid-template-columns:1fr;gap:40px}
  .aframe{display:none}.alist a .th{display:block}
  .alist a{justify-content:flex-start}.alist a .nm{flex:1}
  .slinks{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr}
  .grid4{grid-template-columns:repeat(2,1fr)}
  .cards3{grid-template-columns:1fr 1fr}
  .feat .img{min-height:280px}.feat .tx{padding:56px 40px}
  .side{position:static}
}
@media (max-width:640px){
  .wrap{padding-inline:20px}
  .logo svg{width:128px}
  .sec{padding-block:64px}
  .h-framed{padding-top:0}
  .h-framed .img{width:100%;aspect-ratio:390/300}
  .h-framed .panel{margin-top:-64px;width:calc(100% - 20px);padding:24px 20px 0}
  .h-framed .bars{top:20px;inset-inline-end:20px;transform:scale(.55);transform-origin:top left}
  [dir=ltr] .h-framed .bars{transform-origin:top right}
  .vt{top:auto;bottom:12px;inset-inline-start:auto;inset-inline-end:12px}
  .hero-logo{top:16px;inset-inline-end:16px;width:58%}
  .h-band .img{height:260px}.h-band .panel{margin-top:-50px;padding:24px 20px 0;width:calc(100% - 20px)}
  .h-split{padding-block:24px 40px}
  .h-text{padding-block:32px 40px}.h-text .bars{display:none}
  .people,.scope,.row2,.cards3{grid-template-columns:1fr}
  .people{grid-auto-flow:column;grid-auto-columns:250px;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
  .people .person{scroll-snap-align:start}
  .steps{grid-template-columns:1fr}
  .grid4{grid-template-columns:1fr 1fr;gap:12px}
  .arts a{grid-template-columns:1fr;gap:6px}
  .arts a>span:last-child{display:none}
  .form{padding:24px 20px}
  .btns .btn{width:100%}
  .cta .btn{width:100%}
  .feat .tx{padding:40px 20px 48px}
  .fab{display:block;position:fixed;bottom:0;inset-inline:0;z-index:35;background:var(--white);border-top:1px solid var(--line);padding:12px 16px calc(16px + env(safe-area-inset-bottom,0px));transform:translateY(110%);transition:transform .4s var(--ease)}
  .fab.show{transform:none}.fab .btn{width:100%}
  .review{position:static;max-width:none;text-align:center;padding:.6rem 1rem 96px}
  .langs .lf{display:none}.langs .ls{display:inline}.acts{gap:8px}.top-in{gap:12px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* motion v3 */
.intro{position:fixed;inset:0;z-index:100;background:var(--deep);display:grid;place-items:center;clip-path:inset(0 0 0 0)}
.intro-logo{width:min(560px,80vw);aspect-ratio:334/75}
.intro-skip{position:absolute;bottom:32px;inset-inline-end:32px;font:inherit;font-family:"Almarai","IBM Plex Sans","Noto Sans SC",sans-serif;font-size:.85rem;background:none;border:1px solid rgba(255,255,255,.4);color:var(--sand);padding:.5rem 1.1rem;cursor:pointer}
.nav-line{position:fixed;top:0;inset-inline:0;height:2px;z-index:90;background:var(--stone);transform:scaleX(0);opacity:0;pointer-events:none}
.w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.06em;margin-bottom:-.06em}
.w>span{display:inline-block;will-change:transform}
.img .film2{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.h-framed .img video{z-index:0}
@media (prefers-reduced-motion:reduce){.nav-line{display:none!important}}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:clip}
.nw{direction:ltr;unicode-bidi:isolate;white-space:nowrap}


/* ---- WordPress adaptations ---- */
.langs{display:flex;gap:4px}
.langs a{font-size:.78rem;padding:.3rem .45rem;color:var(--ink2);text-decoration:none;white-space:nowrap}
.langs a[lang=en]{font-family:"IBM Plex Sans",sans-serif}.langs a[lang=zh-CN]{font-family:"Noto Sans SC",sans-serif}.langs a[lang=ar]{font-family:"Almarai",sans-serif}
.langs a[aria-current=true]{color:var(--primary);font-weight:700;box-shadow:inset 0 -1px 0 currentColor}
.langs .ls{display:none}
.admin-bar .top{top:32px}
@media (max-width:782px){.admin-bar .top{top:46px}}
@media (max-width:640px){.langs .lf{display:none}.langs .ls{display:inline}}
.art-body>*{margin:0 0 1.2em}.art-body img{max-width:100%;height:auto}
.grp[hidden],.person[hidden]{display:none!important}
/* phone polish */
@media (max-width:640px){
  .alist a{font-size:1.12rem;padding:16px 0}
  #app[lang=zh-CN] .alist a{font-size:1.02rem}
  .logo svg{width:118px}
  .top-in{justify-content:space-between}
  .langs{gap:0}.langs a{padding:.3rem .38rem}
}
.btn{box-sizing:border-box;max-width:100%}

/* client logos */
.clients .marquee{overflow:hidden;direction:ltr;margin-top:48px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.clients .track{display:flex;width:max-content;animation:alhal-marquee 48s linear infinite}
.clients .marquee:hover .track{animation-play-state:paused}
.clients .logos{display:flex;align-items:center;gap:80px;list-style:none;margin:0;padding:0 40px}
.clients .logos li{flex:none;height:72px;display:flex;align-items:center}
.clients .logos img{display:block;max-height:72px;max-width:180px;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.5;transition:filter .5s,opacity .5s,transform .5s var(--ease)}
.clients .logos img:hover{filter:none;opacity:1;transform:scale(1.06)}
.clients.lit .logos img{transition:none}
@keyframes alhal-marquee{to{transform:translateX(-50%)}}
@media (max-width:640px){.clients .marquee{margin-top:32px}.clients .logos{gap:44px;padding:0 22px}.clients .logos li{height:48px}.clients .logos img{max-height:48px;max-width:120px}.clients .track{animation-duration:32s}}
@media (prefers-reduced-motion:reduce){.clients .track{animation:alhal-marquee 90s linear infinite!important}}
