/* SHAPE navigation refinement — one menu, all viewports. */
.site-links{display:none!important}
.mobile-menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;gap:12px;margin-left:auto;min-height:46px;padding:0 4px;border:0;background:transparent;color:#f5f2eb;font:600 12px Figtree,Arial,sans-serif;letter-spacing:.10em;cursor:pointer;position:relative;z-index:102}
.shape-menu-symbol{width:16px;height:16px;background:#f5a400;border-radius:0;display:inline-block;flex:0 0 16px;transition:border-radius .38s cubic-bezier(.2,.7,.2,1),transform .38s cubic-bezier(.2,.7,.2,1)}
.mobile-menu-open .shape-menu-symbol{border-radius:50%}
.mobile-menu{display:flex!important;position:fixed!important;inset:0!important;z-index:90!important;background:#080808!important;flex-direction:column;justify-content:center;gap:clamp(3px,1.2vh,12px);padding:clamp(90px,12vh,140px) clamp(24px,7vw,110px) 50px;opacity:0;visibility:hidden;pointer-events:none;overflow-y:auto;transition:opacity .3s ease,visibility .3s ease}
.mobile-menu-open .mobile-menu{opacity:1;visibility:visible;pointer-events:auto}
.mobile-menu-open{overflow:hidden}
.mobile-menu .shape-menu-link{display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(100%,1100px);padding:clamp(4px,1vh,13px) 0;color:#f5f2eb;font:750 clamp(34px,5.4vw,80px)/1.06 Figtree,Arial,sans-serif;letter-spacing:-.067em;text-decoration:none;transition:color .2s ease}
.mobile-menu .shape-menu-link:hover,.mobile-menu .shape-menu-link:focus-visible,.mobile-menu .shape-menu-link[aria-current="page"]{color:#f5a400}
.mobile-menu .shape-menu-link:last-of-type{color:#f5a400}
.shape-triangle{display:inline-block;width:clamp(12px,1.4vw,19px);height:clamp(12px,1.4vw,19px);background:currentColor;clip-path:polygon(0 0,100% 0,100% 100%);transform:rotate(45deg);flex:0 0 auto}
.shape-triangle[data-direction="up-right"]{transform:rotate(0deg)}
.shape-triangle[data-direction="down"]{transform:rotate(135deg)}
.shape-triangle[data-direction="up"]{transform:rotate(-45deg)}
.shape-triangle[data-direction="left"]{transform:rotate(225deg)}
.mobile-menu-foot{margin-top:clamp(20px,5vh,55px);font-size:11px;letter-spacing:.1em;color:#a5a19b}
.site-arrow-icon{display:none!important}
.shape-inline-triangle{display:inline-block!important;width:.62em;height:.62em;margin-inline-start:.22em;vertical-align:.03em;background:currentColor;clip-path:polygon(0 0,100% 0,100% 100%);transform:rotate(0deg)}
.shape-inline-triangle[data-direction="down"]{transform:rotate(135deg)}
.shape-inline-triangle[data-direction="up"]{transform:rotate(-45deg)}
@media(max-width:750px){.mobile-menu .shape-menu-link{font-size:clamp(31px,9vw,56px)}.shape-triangle{width:13px;height:13px}.mobile-menu{padding-left:7vw;padding-right:7vw}}
@media(prefers-reduced-motion:reduce){.mobile-menu,.shape-menu-symbol,.mobile-menu .shape-menu-link{transition:none!important}}

.mobile-menu .shape-menu-link > span:first-child{font-size:inherit!important;color:inherit!important}
.mobile-menu .shape-menu-link > .shape-triangle{font-size:initial!important;color:inherit!important}

/* Navigation polish: desktop close control, language before menu, compact Arabic mobile labels. */
.nav{z-index:110!important}
.mobile-menu-toggle{order:3!important;margin-left:0!important}
.shape-language-switch{order:2!important;margin-left:auto!important;margin-right:18px!important}
.mobile-menu-open .mobile-menu-toggle{color:#f5f2eb!important;visibility:visible!important;opacity:1!important}
.mobile-menu-open .shape-menu-label{display:inline!important;color:#f5f2eb!important}
.shape-ar .mobile-menu .shape-menu-link>span:first-child{font-size:clamp(29px,4.4vw,61px)!important;line-height:1.35!important}
@media(max-width:750px){
 .shape-language-switch{margin-right:12px!important}
 .mobile-menu-toggle{min-width:82px!important;gap:10px!important}
 .shape-ar .mobile-menu .shape-menu-link>span:first-child{font-size:clamp(21px,5.7vw,29px)!important;line-height:1.5!important}
 .shape-ar .mobile-menu{gap:5px!important;padding-top:105px!important;padding-bottom:32px!important}
 .shape-ar .mobile-menu .shape-menu-link{padding:7px 0!important}
}

.discipline-toggle .discipline-symbol{display:block!important;width:16px!important;height:16px!important;justify-self:end!important;background:#f5a400!important;border-radius:0!important;font-size:0!important;line-height:0!important;transform:none!important;transition:border-radius .35s ease!important}
.discipline-toggle[aria-expanded=true] .discipline-symbol{border-radius:50%!important;transform:none!important}

/* Compact control geometry — consistent desktop and phone sizes. */
.nav .mobile-menu-toggle{gap:8px!important;min-width:0!important;min-height:34px!important;padding:3px 0!important;white-space:nowrap!important}
.nav .mobile-menu-toggle .shape-menu-label{font-size:11px!important;line-height:1!important;font-weight:600!important;letter-spacing:.08em!important}
.nav .mobile-menu-toggle .shape-menu-symbol{width:11px!important;height:11px!important;flex:0 0 11px!important;font-size:0!important;line-height:0!important}
.nav .shape-language-switch{font-size:11px!important;margin-right:14px!important;min-width:23px!important}
.mobile-menu .shape-triangle{width:11px!important;height:11px!important;flex:0 0 11px!important}
.discipline-toggle .discipline-symbol{width:10px!important;height:10px!important;background:#f5f2eb!important}
@media(max-width:750px){
 .nav .mobile-menu-toggle{min-width:0!important;min-height:32px!important;gap:7px!important}
 .nav .mobile-menu-toggle .shape-menu-label{font-size:10px!important}
 .nav .mobile-menu-toggle .shape-menu-symbol{width:10px!important;height:10px!important;flex-basis:10px!important}
 .nav .shape-language-switch{margin-right:12px!important}
 .mobile-menu .shape-triangle{width:9px!important;height:9px!important;flex-basis:9px!important}
 .discipline-toggle .discipline-symbol{width:9px!important;height:9px!important}
}

/* Shared header contract: language immediately before menu, menu flush right. */
header.nav{display:flex!important;align-items:center!important;position:relative;z-index:110!important}
header.nav .logo{order:0!important;margin-right:auto!important}
header.nav .site-links{display:none!important}
header.nav .shape-language-switch{order:1!important;margin-left:auto!important;margin-right:14px!important;flex:0 0 auto!important}
header.nav .mobile-menu-toggle{order:2!important;margin-left:0!important;margin-right:0!important;flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;visibility:visible!important}
body.mobile-menu-open header.nav{z-index:150!important}
/* Keep the exact same header coordinates before and after opening. */
body.mobile-menu-open header.nav .mobile-menu-toggle{position:relative!important;right:auto!important;top:auto!important;left:auto!important;bottom:auto!important;z-index:160!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
body.mobile-menu-open header.nav .shape-language-switch{position:relative!important;right:auto!important;top:auto!important;left:auto!important;bottom:auto!important;z-index:160!important}
body.mobile-menu-open .mobile-menu{z-index:120!important}
@media(max-width:750px){header.nav{padding-right:6vw!important;padding-left:6vw!important}}

/* SHAPE menu: canonical geometry and typography, shared by every page. */
.mobile-menu .shape-menu-link,
.mobile-menu .shape-menu-link>span:first-child{
  font-family:Figtree,Arial,sans-serif!important;
  font-weight:800!important;
  font-size:clamp(46px,6.6vw,104px)!important;
  line-height:1.03!important;
  letter-spacing:-.085em!important;
}
html[lang="ar"] body.shape-ar .mobile-menu .shape-menu-link,
html[lang="ar"] body.shape-ar .mobile-menu .shape-menu-link>span:first-child{
  font-family:"IBM Plex Sans Arabic",sans-serif!important;
  font-weight:700!important;
  font-size:clamp(39px,5.6vw,88px)!important;
  line-height:1.18!important;
  letter-spacing:-.045em!important;
}
@media(max-width:750px){
 .mobile-menu .shape-menu-link,.mobile-menu .shape-menu-link>span:first-child{font-size:clamp(43px,11.5vw,70px)!important;line-height:1.07!important}
 html[lang="ar"] body.shape-ar .mobile-menu .shape-menu-link,
 html[lang="ar"] body.shape-ar .mobile-menu .shape-menu-link>span:first-child{font-size:clamp(37px,9.8vw,60px)!important;line-height:1.24!important}
}
@media(min-width:751px){
 html body nav#mobileMenu.mobile-menu{
   box-sizing:border-box!important;
   position:fixed!important;
   inset:0!important;
   width:100vw!important;
   max-width:100vw!important;
   display:flex!important;
   flex-direction:column!important;
   align-items:stretch!important;
   padding-left:4.5vw!important;
   padding-right:4.5vw!important;
   z-index:120!important;
 }
 html body nav#mobileMenu.mobile-menu>a.shape-menu-link{
   box-sizing:border-box!important;
   display:flex!important;
   flex:0 0 auto!important;
   align-self:stretch!important;
   justify-content:space-between!important;
   position:relative!important;
   width:100%!important;
   min-width:0!important;
   max-width:none!important;
   margin:0!important;
   padding-left:0!important;
   padding-right:0!important;
 }
 html body nav#mobileMenu.mobile-menu>a.shape-menu-link>.shape-triangle{
   position:absolute!important;
   right:0!important;
   left:auto!important;
   top:50%!important;
   margin:0!important;
   translate:0 -50%!important;
 }
 html[lang="ar"] body.shape-ar nav#mobileMenu.mobile-menu>a.shape-menu-link>.shape-triangle{
   right:auto!important;
   left:0!important;
 }
}
html body.mobile-menu-open #desktopCubeCopy,
html body.mobile-menu-open #desktopCubeCopy *,
html body.mobile-menu-open .desktop-cube-copy,
html body.mobile-menu-open .desktop-cube-copy *,
html body.mobile-menu-open .desktop-cube-slogan,
html body.mobile-menu-open .desktop-cube-scroll{
 display:none!important;
 visibility:hidden!important;
 opacity:0!important;
}

/* Menu footer follows the exact same text edge as menu headings. */
@media(min-width:751px){
 html body nav#mobileMenu.mobile-menu>.mobile-menu-foot{box-sizing:border-box!important;align-self:stretch!important;width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;text-align:left!important}
 html[lang="ar"] body.shape-ar nav#mobileMenu.mobile-menu>.mobile-menu-foot{text-align:right!important;direction:rtl!important}
}

/* Menu footer: anchor to the same physical gutter as headings, in both languages. */
@media(min-width:751px){
 html body nav#mobileMenu.mobile-menu>.mobile-menu-foot{
  position:absolute!important;left:4.5vw!important;right:auto!important;
  bottom:12vh!important;width:auto!important;max-width:calc(100vw - 9vw)!important;
  align-self:auto!important;margin:0!important;padding:0!important;
  text-align:left!important;
 }
 html[lang="ar"] body.shape-ar nav#mobileMenu.mobile-menu>.mobile-menu-foot{
  left:auto!important;right:4.5vw!important;text-align:right!important;direction:rtl!important;
 }
}
