@font-face{font-family:Inter;src:url(assets/inter-latin.woff2) format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:Manrope;src:url(assets/manrope-latin.woff2) format('woff2');font-weight:500 700;font-style:normal;font-display:swap}
@font-face{font-family:Cairo;src:url(assets/cairo-arabic.woff2) format('woff2');font-weight:400 700;font-style:normal;font-display:swap}
:root{--heading:Manrope,Inter,Arial,sans-serif;--body:Inter,Arial,sans-serif;--mono:Inter,Arial,sans-serif}
body{font-size:17px;line-height:1.7}
h2{font-size:clamp(28px,2.75vw,38px);font-weight:600;line-height:1.35;letter-spacing:-.025em}
h3{letter-spacing:-.015em}
.hero h1{font-family:var(--heading);font-size:clamp(47px,4.5vw,65px);font-weight:600;line-height:1.14;letter-spacing:-.035em}
.hero-intro{font-size:18px;line-height:1.75}
.eyebrow,.hero .eyebrow,.tools-heading .eyebrow,.contact-copy .eyebrow{font-size:11px;font-weight:600;letter-spacing:.075em}
.section-heading.center>p:not(.eyebrow),.about-copy .lead,.section-description{font-size:17px;line-height:1.8}
.button{font-size:15px;font-weight:600}
.text-link{font-size:15px;font-weight:600}
.service-card h3{font-size:18px;font-weight:600}
.service-card p,.bureau-principles p,.tool-card p,.method-grid p{font-size:16px;line-height:1.75}
.card-more,.tool-link{font-size:14px;font-weight:500}
.pole-card h2{font-size:15px;line-height:1.5;font-weight:600}
.pole-card>div>span{font-size:9px;letter-spacing:.035em}
.tool-overline,.tool-steps,.tool-state{font-size:10px;letter-spacing:.02em}
.project-card-caption>span{font-size:10px;font-weight:600;letter-spacing:.05em}
.project-card-caption h3{font-size:19px;font-weight:600}
.illustration-note,.small-note{font-size:13px}
.about-accordion summary{font-size:16px;font-weight:600}
.about-accordion p,.dialog-intro,.info-dialog p{font-size:16px;line-height:1.8}
.contact-form-note{font-size:14px;line-height:1.8}
.contact-form-card>h3{font-size:24px;font-weight:600}
.field label,.level-row label{font-size:14px;font-weight:500}
.scene-annotation,.image-credit-label{font-size:8px}
.topbar{font-size:10px;letter-spacing:.04em}
.topbar a{font-size:12px}
.language-switch a[lang=ar]{font-family:Cairo,Arial,sans-serif;font-size:12px}

/* The masthead is occupied by the six requested links and direct tool access. */
.site-header{background:#fff}
.header-inner{min-height:128px;gap:46px}
.site-header .logo-card{width:224px;padding:0}
.header-navigation{flex:1;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.header-navigation .main-nav{display:flex;position:static;width:100%;margin:0;gap:22px;justify-content:space-between;align-items:center;font-size:15px;font-weight:600;border:0;box-shadow:none;padding:0;background:transparent}
.header-navigation .main-nav a{padding:16px 0 18px;line-height:1.4;white-space:nowrap}
.header-navigation .main-nav a:after{bottom:10px}
.header-quicklinks{display:flex;align-items:center;justify-content:flex-end;gap:28px;border-top:1px solid #dbe5f3;padding:11px 0 9px;line-height:1.5}
.header-quicklinks>span{font-size:10px;font-weight:600;letter-spacing:.065em;color:#64738b;margin-inline-end:auto}
.header-quicklinks button,.header-quicklinks>a{border:0;background:none;color:#1e53a5;padding:0;font:500 13px/1.5 var(--body);white-space:nowrap}
.header-quicklinks button:hover,.header-quicklinks>a:hover{color:#1242a0;text-decoration:underline;text-underline-offset:4px}

/* The unmodified transparent logo sits on a full-width pale-blue brand band. */
.footer-brand-band{background:#e6efff;border-bottom:1px solid #ffffff30}
.footer-brand-band .footer-brand{display:grid;grid-template-columns:224px minmax(0,1fr) auto;align-items:center;gap:46px;padding:28px 0;margin:0}
.footer-brand-band .footer-brand .logo-card{width:224px;padding:0;background:transparent;grid-column:auto}
.footer-brand-band .footer-brand>p{font-size:16px;line-height:1.75;color:#304c75;margin:0}
.footer-brand-band .footer-study{font-size:15px;color:#1e53a5;border-bottom-color:#1e53a55c;margin:0;grid-column:auto;white-space:nowrap}
.footer-brand-band .footer-study:hover{color:#133f84}
.site-footer .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:70px;padding-block:43px 34px}
.site-footer .footer-grid>div{display:block;grid-column:auto}
.site-footer .footer-grid>div>h2{font-family:var(--body);font-size:12px;font-weight:600;line-height:1.5;letter-spacing:.055em;margin-bottom:20px}
.site-footer .footer-grid>div>a,.site-footer .footer-grid>div>button{font-size:15px;line-height:1.6;margin-bottom:11px}
.site-footer .footer-grid>div:last-child>.back-top{display:flex;margin:22px 0 0;max-width:245px;font-size:11px}
.site-footer .footer-bottom{font-size:10px;letter-spacing:.035em}
.site-footer .footer-bottom>.language-switch a{font-size:11px}

[dir=rtl] body{--heading:Cairo,Inter,Arial,sans-serif;--body:Cairo,Inter,Arial,sans-serif;--mono:Cairo,Inter,Arial,sans-serif;font-size:18px;line-height:1.9}
[dir=rtl] .header-navigation .main-nav{margin:0;font-family:var(--body);font-size:16px;gap:20px}
[dir=rtl] .header-quicklinks>span{letter-spacing:0;font-size:12px}
[dir=rtl] .header-quicklinks button,[dir=rtl] .header-quicklinks>a{font-size:15px}
[dir=rtl] .hero h1{font-family:Cairo,Inter,Arial,sans-serif;font-size:clamp(40px,4.2vw,59px);line-height:1.55;font-weight:600;letter-spacing:0}
[dir=rtl] h2,[dir=rtl] .tools-heading h2,[dir=rtl] .contact-copy h2{font-family:Cairo,Inter,Arial,sans-serif;font-weight:600;line-height:1.65}
[dir=rtl] .hero .eyebrow,[dir=rtl] .tools-heading .eyebrow,[dir=rtl] .contact-copy .eyebrow{font-size:12px}
[dir=rtl] .service-card h3{font-size:19px;font-weight:600}
[dir=rtl] .service-card p,[dir=rtl] .tool-card p,[dir=rtl] .method-grid p{font-size:17px;line-height:1.9}
[dir=rtl] .pole-card h2{font-size:15px;line-height:1.8}
[dir=rtl] .pole-card>div>span{font-size:10px;letter-spacing:0}
[dir=rtl] .site-footer .footer-grid>div>h2{font-size:14px;letter-spacing:0}
[dir=rtl] .site-footer .footer-grid>div>a,[dir=rtl] .site-footer .footer-grid>div>button{font-size:17px;line-height:1.8}
[dir=rtl] .site-footer .footer-grid>div:last-child>.back-top{font-size:13px;margin:22px 0 0}

@media(max-width:1200px){
  .header-inner{gap:32px;min-height:117px}
  .site-header .logo-card{width:194px}
  .header-navigation .main-nav{font-size:14px;gap:17px}
  .header-quicklinks{gap:22px}
  .footer-brand-band .footer-brand{gap:32px;grid-template-columns:204px minmax(0,1fr) auto}
  .footer-brand-band .footer-brand .logo-card{width:204px}
  [dir=rtl] .header-navigation .main-nav{font-size:15px;gap:17px}
}
@media(max-width:980px){
  html{scroll-padding-top:110px}
  .header-inner{min-height:103px;gap:20px}
  .site-header .logo-card{width:180px}
  .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:43px;height:43px;padding:11px;background:#f3f6fc;border:1px solid #cddbf0;margin-left:auto}
  .menu-toggle span{display:block;width:100%;height:1px;background:#204a83;transition:transform .2s}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .header-navigation{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;padding:16px 32px 24px;max-height:calc(100dvh - 145px);overflow:auto;border-bottom:1px solid #d4dfef;box-shadow:0 20px 30px #132e5519}
  .menu-open .header-navigation{display:block}
  .header-navigation .main-nav{display:flex;position:static;margin:0;flex-direction:column;align-items:stretch;gap:0;font-size:16px}
  .header-navigation .main-nav a{padding:14px 0;border-bottom:1px solid #e1e8f3;white-space:normal}
  .header-navigation .main-nav a:after{display:none}
  .header-quicklinks{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;border:0;padding:21px 0 0}
  .header-quicklinks>span{grid-column:1/-1;margin:0 0 3px;font-size:11px}
  .header-quicklinks button,.header-quicklinks>a{background:#edf3ff;padding:11px 12px;border:1px solid #dce7fa;font-size:13px;text-align:center;white-space:normal}
  .footer-brand-band .footer-brand{grid-template-columns:190px minmax(0,1fr);gap:18px 32px}
  .footer-brand-band .footer-brand .logo-card{width:190px;grid-row:1/3}
  .footer-brand-band .footer-study{grid-column:2;justify-self:start;font-size:14px}
  .site-footer .footer-grid{gap:35px}
  [dir=rtl] .menu-toggle{margin-left:0;margin-right:auto}
  [dir=rtl] .header-navigation .main-nav{font-size:18px;gap:0;margin:0}
}
@media(max-width:760px){
  html{scroll-padding-top:98px}
  body{font-size:16px;line-height:1.75}
  .header-inner{min-height:94px}
  .site-header .logo-card{width:171px}
  .header-navigation{padding:14px 24px 22px}
  .hero h1{font-size:clamp(37px,8.7vw,49px);line-height:1.18;letter-spacing:-.025em}
  .hero-intro{font-size:16px;line-height:1.8}
  h2,.about-copy h2,.project-heading h2,.tools-heading h2,.contact-copy h2{font-size:29px;line-height:1.4;letter-spacing:-.02em}
  .eyebrow,.hero .eyebrow,.tools-heading .eyebrow,.contact-copy .eyebrow{font-size:10px}
  .button{font-size:14px}
  .pole-card h2{font-size:13px}
  .pole-card>div>span{font-size:8px}
  .service-card h3{font-size:16px}
  .service-card p,.tool-card p,.method-grid p{font-size:15px;line-height:1.8}
  .tool-overline,.tool-steps,.tool-state{font-size:9px}
  .tool-card h3{font-size:23px}
  .field label,.level-row label{font-size:13px}
  .footer-brand-band .footer-brand{grid-template-columns:minmax(135px,.95fr) minmax(0,1fr);gap:18px 24px;padding:26px 0;align-items:center}
  .footer-brand-band .footer-brand .logo-card{width:100%;max-width:180px;grid-row:auto}
  .footer-brand-band .footer-brand>p{font-size:13px;line-height:1.7}
  .footer-brand-band .footer-study{grid-column:1/-1;font-size:14px}
  .site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:32px 24px;padding-block:34px}
  .site-footer .footer-grid>div:last-child{grid-column:1/-1}
  .site-footer .footer-grid>div>h2{font-size:11px;margin-bottom:17px}
  .site-footer .footer-grid>div>a,.site-footer .footer-grid>div>button{font-size:14px;line-height:1.7}
  .site-footer .footer-grid>div:last-child>.back-top{font-size:10px}
  .site-footer .footer-bottom{font-size:9px}
  [dir=rtl] body{font-size:17px}
  [dir=rtl] .hero h1{font-size:clamp(35px,8.5vw,46px);line-height:1.55}
  [dir=rtl] h2,[dir=rtl] .about-copy h2,[dir=rtl] .project-heading h2,[dir=rtl] .tools-heading h2,[dir=rtl] .contact-copy h2{font-size:29px;line-height:1.7;letter-spacing:0}
  [dir=rtl] .service-card h3{font-size:18px}
  [dir=rtl] .service-card p,[dir=rtl] .tool-card p,[dir=rtl] .method-grid p{font-size:16px}
  [dir=rtl] .footer-brand-band .footer-brand>p{font-size:15px}
}
