.site-footer {
  --f-bg:#131011; --f-ink:#F3EFE9; --f-dim:rgba(243,239,233,.58); --f-faint:rgba(243,239,233,.34); --f-hair:rgba(243,239,233,.12);
  --f-disp:'Panchang','Inter',system-ui,sans-serif;
  position:relative; z-index:5; isolation:isolate; overflow:hidden; background:var(--f-bg); color:var(--f-ink); border-top:1px solid var(--f-hair);
}
html[lang="ar"] .site-footer {--f-disp:'Alexandria','IBM Plex Sans Arabic',sans-serif;}
html.home-boot .site-footer {display:none;}
.site-footer a {color:inherit;text-decoration:none;}
.ft-in {padding:clamp(80px,12vh,150px) var(--gutter) 0;}

.ft-top {display:flex;flex-direction:column;align-items:center;text-align:center;gap:clamp(34px,5vh,60px);
  padding-bottom:clamp(56px,8vh,96px);border-bottom:1px solid var(--f-hair);}
.ft-line {margin:0;width:100%;display:flex;flex-direction:column;align-items:center;gap:clamp(10px,1.6vh,20px);font-family:var(--f-disp);font-weight:600;letter-spacing:-.012em;}
.ft-l1 {font-size:clamp(30px,4.3vw,92px);line-height:1.08;white-space:nowrap;zoom:var(--fit,1);}
.ft-l2 {max-width:100%;font-size:clamp(17px,2vw,42px);line-height:1.25;font-weight:500;color:var(--f-dim);text-wrap:balance;}
.ft-l2 .ft-accent {color:var(--c-red-400);}
html[lang="ar"] .ft-line {font-weight:800;letter-spacing:0;}
html[lang="ar"] .ft-l1 {font-size:clamp(40px,6.6vw,136px);line-height:1.3;}
html[lang="ar"] .ft-l2 {font-size:clamp(20px,2.7vw,56px);line-height:1.5;font-weight:700;}
.ft-line .ft-accent {color:var(--c-red-400);}
.ft-line .w {display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.14em;margin-bottom:-.14em;}
.ft-line .w > span {display:inline-block;transform:translateY(110%);transition:transform 1.1s cubic-bezier(.16,1,.3,1) calc(var(--i,0) * .04s);}
.site-footer.in .ft-line .w > span {transform:none;}
.ft-reach {display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:22px clamp(28px,4vw,64px);}
.ft-mail {position:relative;font-family:var(--f-disp);font-size:clamp(20px,2.2vw,40px);font-weight:500;letter-spacing:-.01em;line-height:1.1;white-space:nowrap;padding-bottom:8px;}
.ft-mail::after {content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--f-hair);}
.ft-mail::before {content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--f-ink);transform:scaleX(0);transform-origin:0 50%;transition:transform .7s cubic-bezier(.16,1,.3,1);z-index:1;}
.ft-mail:hover::before,.ft-mail:focus-visible::before {transform:scaleX(1);}
.ft-cta {position:relative;}

.ft-map {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px clamp(24px,3vw,56px);padding:clamp(44px,6vh,72px) 0 clamp(40px,6vh,70px);}
.ft-h {display:block;width:100%;margin:0 0 16px;padding:0;border:0;background:none;font-family:inherit;text-align:start;pointer-events:none;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--f-faint);}
html[lang="ar"] .ft-h {letter-spacing:0;font-size:13.5px;}
.ft-h b {display:none;}
.ft-col ul {list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.ft-col a {position:relative;display:inline-block;padding-bottom:3px;font-size:15.5px;font-weight:500;color:var(--f-dim);transition:color .35s;}
html[lang="ar"] .ft-col a {font-size:16px;}
.ft-col a::after {content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--f-ink);transform:scaleX(0);transform-origin:0 50%;transition:transform .6s cubic-bezier(.16,1,.3,1);}
html[dir="rtl"] .ft-col a::after {transform-origin:100% 50%;}
.ft-col a:hover,.ft-col a:focus-visible,.ft-col a[aria-current="page"] {color:var(--f-ink);}
.ft-col a:hover::after,.ft-col a:focus-visible::after {transform:scaleX(1);}
.ft-sections .sub a {font-size:14px;color:var(--f-dim);}
.ft-offices li {display:flex;flex-direction:column;gap:3px;}
.ft-offices b {font-size:15.5px;font-weight:600;}
.ft-offices span {font-size:13.5px;line-height:1.5;color:var(--f-dim);}

.ft-mark {padding:0 var(--gutter);direction:ltr;}
.ft-mark-in {position:relative;width:100%;aspect-ratio:516 / 150;transform:translate3d(0,var(--rise,0px),0);will-change:transform;}
.ft-mark-gl,.ft-mark-svg {position:absolute;inset:0;width:100%;height:100%;display:block;}
.ft-mark-gl {inset:1px;width:calc(100% - 2px);height:calc(100% - 2px);background:#F3EFE9;}
.ft-mark-shade {fill:var(--f-bg);}
.ft-mark-red {fill:var(--c-red-500);}
.ft-sh {position:absolute;top:-1px;bottom:-1px;left:calc(var(--x0) / 516 * 100% - 1px);width:calc((var(--x1) - var(--x0)) / 516 * 100% + 2px);background:var(--f-bg);
  transform-origin:50% 0;transform:scaleY(1);transition:transform 0s .3s;will-change:transform;}
.ft-mark.show .ft-sh {transform:scaleY(0);transition:transform 1.25s cubic-bezier(.16,1,.3,1) calc(var(--k) * .11s);}
html.no-motion .ft-sh {display:none;}

.ft-base {display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;padding:clamp(22px,3vh,34px) var(--gutter) max(26px,env(safe-area-inset-bottom));
  font-size:12.5px;color:var(--f-dim);}
.ft-credit {justify-self:start;transition:color .3s;}
.ft-credit b {font-weight:600;color:var(--f-ink);border-bottom:1px solid var(--f-hair);padding-bottom:2px;transition:border-color .3s;}
.ft-credit:hover b {border-color:var(--f-ink);}
.ft-copy {margin:0;justify-self:center;}
.ft-up {justify-self:end;position:relative;padding:0 0 3px;border:0;background:none;color:var(--f-ink);font:inherit;font-weight:600;cursor:pointer;}
.ft-up::after {content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--f-hair);transition:background-color .35s;}
.ft-up:hover::after,.ft-up:focus-visible::after {background:var(--f-ink);}

@media (max-width:1080px),(max-aspect-ratio:9/10) {
 .ft-map {grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media (min-width:761px) and (max-aspect-ratio:9/10) {
 .ft-in {padding-top:clamp(110px,11vh,190px);}
 .ft-top {gap:clamp(40px,5vh,80px);padding-bottom:clamp(70px,8vh,120px);}
 .ft-l1 {font-size:6.4vw;} html[lang="ar"] .ft-l1 {font-size:10vw;}
 .ft-l2 {font-size:3vw;} html[lang="ar"] .ft-l2 {font-size:4.2vw;}
 .ft-mail {font-size:clamp(26px,3.9vw,44px);}
 .ft-map {grid-template-columns:repeat(4,minmax(0,1fr));padding:clamp(60px,7vh,100px) 0;}
 .ft-h {font-size:13.5px;margin-bottom:22px;} html[lang="ar"] .ft-h {font-size:15.5px;}
 .ft-col ul {gap:14px;}
 .ft-col a,.ft-offices b {font-size:18.5px;} html[lang="ar"] .ft-col a {font-size:19.5px;}
 .ft-offices span {font-size:15px;}
 .ft-base {font-size:14px;padding-top:36px;padding-bottom:40px;}
}
@media (max-width:760px) {

 .ft-in {padding-top:clamp(26px,4.6svh,52px);}
 .ft-top {gap:clamp(12px,2.2svh,22px);padding-bottom:clamp(14px,2.6svh,30px);}
 .ft-line {gap:8px;}
 .ft-l1 {white-space:normal;text-wrap:balance;font-size:min(7.6vw,4.2svh);} html[lang="ar"] .ft-l1 {font-size:min(10.4vw,5.6svh);line-height:1.2;}
 .ft-l2 {font-size:min(3.9vw,2.4svh);max-width:100%;text-wrap:balance;} html[lang="ar"] .ft-l2 {font-size:min(5vw,2.9svh);line-height:1.4;}
 .ft-reach {gap:12px 18px;}
 .ft-mail {font-size:clamp(15px,4.4vw,19px);padding-bottom:6px;}
 .ft-map {display:block;padding:0 0 clamp(10px,2svh,26px);}
 .ft-col {border-bottom:1px solid var(--f-hair);}
 .ft-h {display:flex;align-items:baseline;justify-content:space-between;margin:0;padding:clamp(8px,1.5svh,16px) 0;pointer-events:auto;cursor:pointer;
   font-family:var(--f-disp);font-size:clamp(17px,min(5vw,2.9svh),22px);font-weight:600;letter-spacing:0;text-transform:none;line-height:1.2;color:var(--f-dim);transition:color .4s;}
 html[lang="ar"] .ft-h {font-size:clamp(18px,min(5.4vw,3.1svh),24px);font-weight:700;}
 .ft-h b {display:block;font-family:'Panchang','Inter',sans-serif;font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--f-faint);transition:color .4s;}
 .ft-col.open .ft-h,.ft-col.open .ft-h b {color:var(--f-ink);}
 .ft-fold {display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.16,1,.3,1);}
 .ft-fold > ul {overflow:hidden;min-height:0;visibility:hidden;transition:visibility 0s .55s;}
 .ft-col.open .ft-fold {grid-template-rows:1fr;}
 .ft-col.open .ft-fold > ul {visibility:visible;transition:none;padding-bottom:16px;}
 .ft-col ul {gap:9px;}
 .ft-col a,.ft-offices b {font-size:15px;}
 .ft-base {padding-top:14px;padding-bottom:max(16px,env(safe-area-inset-bottom));font-size:11.5px;}
 .ft-base {grid-template-columns:1fr auto;row-gap:14px;}
 .ft-copy {grid-column:1 / -1;grid-row:2;justify-self:start;}
}
html.no-motion .ft-line .w > span {transform:none;transition:none;}
