/* Approved bilingual typography, applied to every page and shared component. */
:root{--font-ar:'IBM Plex Sans Arabic','Noto Sans Arabic',Tahoma,sans-serif;--font-en:'Manrope',Inter,Arial,sans-serif;--font-body-size:clamp(1rem,.97rem + .15vw,1.0625rem);--size-h1:clamp(2rem,3.8vw,3.75rem);--size-h2:clamp(1.7rem,2.8vw,2.75rem);--size-h3:clamp(1.2rem,1.7vw,1.5rem)}
html[lang=ar] body{font-family:var(--font-ar);line-height:1.9}html[lang=en] body{font-family:var(--font-en);line-height:1.7}body{font-size:var(--font-body-size)}button,input,textarea,select{font:inherit}h1,h2,h3,h4{font-family:inherit;font-weight:700;line-height:1.3;text-wrap:balance}h1,.hero-copy h1,.page-hero h1{font-size:var(--size-h1);letter-spacing:-.035em}h2,.final-cta h2,.service-content h2{font-size:var(--size-h2)}h3,.service-card h3{font-size:var(--size-h3)}html[lang=ar] h1,html[lang=ar] h2{line-height:1.45;letter-spacing:0}html[lang=ar] .eyebrow{letter-spacing:0}p,.service-card p,.faq p,.footer p{font-size:var(--font-body-size);font-weight:400}.lead,.hero-copy .lead{font-size:clamp(1.0625rem,1rem + .25vw,1.1875rem)}.button,.small,.mobile-contact a{font-size:15px;font-weight:700}.site-header nav{font-size:14px;font-weight:600}.site-header nav>a,.nav-dropdown>summary{white-space:normal}.site-header nav{gap:16px}.header-inner{gap:20px}.header-actions{flex-shrink:0}.language[lang=ar]{font-family:var(--font-ar)}.language[lang=en]{font-family:var(--font-en)}.eyebrow{font-size:12px;font-weight:600;letter-spacing:1.2px}.text-link{font-size:15px;font-weight:600}.service-card .text-link{font-size:15px}.qualities h3,.industry-grid h3,.steps h3{font-size:20px;font-weight:600}.footer h2{font-size:18px;font-weight:700}.footer-grid>div>a{font-size:14px}.footer-bottom{font-size:13px}.number,.steps span{font-weight:500}.topline{font-size:12px}.small{padding:10px 12px}.hero-discover{font-size:14px}.contact-details span{font-size:15px}.section-heading{max-width:960px}.service-card h3{line-height:1.5}
/* Every photo is bounded by its usable source resolution. */
.hero-art .hero-main{width:348px}html[lang=en] .hero-art .hero-main{width:367px}.hero-art .hero-main figcaption{justify-content:flex-end;padding-inline-start:45%;font-size:12px}
.asset-frame{display:block;position:relative;isolation:isolate;width:100%;overflow:hidden;border-radius:10px;direction:ltr;background:#e2ecf2;flex-shrink:0}.asset-frame picture{display:block}.asset-frame img{display:block;position:absolute;inset:0 auto auto 0;max-width:none;height:auto;transform-origin:top left;object-fit:cover;object-position:center}.media-figure{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;margin:0;padding:24px;background:#edf4f8;border:1px solid #d7e4ed;border-radius:18px;min-width:0}.media-figure figcaption,.about-mark figcaption{font-size:12px;line-height:1.7;color:#53677c;text-align:center}.hero-art{min-height:420px;padding:0;max-width:460px;width:100%;margin-inline:auto}.hero-main{width:max-content;max-width:85%;border:8px solid #fff;border-radius:20px;margin:0;margin-inline-start:auto;box-shadow:0 20px 60px #071f6012;overflow:visible}.hero-main .asset-frame{border-radius:12px}.hero-main figcaption{padding:16px 18px;font-size:14px;justify-content:flex-start;line-height:1.7}.hero-small{width:205px;max-width:50%;position:absolute;inset-inline-start:0;inset-block-end:0;border:6px solid #fff;border-radius:14px;box-shadow:0 20px 48px #071f6020}.hero-small figcaption{padding:9px 8px;font-size:12px;line-height:1.7}.hero-small .asset-frame{border-radius:8px 8px 0 0}.art-note{inset-block-end:-42px;inset-inline:0;text-align:center;font-size:12px}.art-star{inset-block-start:-30px;inset-inline-start:-5px;font-size:65px}.hero-grid{gap:64px;grid-template-columns:1.1fr .9fr}.hero{padding-block:78px 100px}.about-mark{border-radius:20px;padding:32px 24px;min-height:280px;max-width:420px;gap:20px}.service-card>.asset-frame{margin-inline:auto;margin-bottom:22px;border-radius:10px}.service-card .service-icon{width:40px;height:40px;display:none}.service-card{padding:26px}.service-card h3{margin-top:0}.service-card .asset-frame+.service-icon+h3{margin-top:0}.service-card.featured{background:var(--navy)}.page-media{padding:20px;background:radial-gradient(ellipse at center,#d8ecf8,#f5faff 70%);border-radius:24px}.page-media .media-figure{background:transparent;border:0;min-height:240px}.page-hero .split{grid-template-columns:1.2fr .8fr;gap:48px}.showcase figure{padding:24px;background:#eef4f7;border:1px solid #dce8ed}.showcase .asset-frame{margin-inline:auto}.showcase figcaption{background:transparent;text-align:center;font-size:12px;padding-top:16px}.detail-images{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:28px}.detail-images>.media-figure{flex:1 1 320px;max-width:560px}.media-section{padding-block:48px}.media-heading{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:36px}.media-heading h2{margin-bottom:0}.media-heading>.asset-frame{width:240px}.faq-layout>div:first-child>.asset-frame{width:140px;margin-block:22px}.illustration-gallery{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:24px}.illustration-gallery .media-figure{flex:1 1 340px;max-width:560px}.illustration-gallery .mini-illustration{flex:1 1 200px;max-width:400px;min-height:180px;background:linear-gradient(145deg,#eef7fc,#fff)}.final-cta{position:relative;isolation:isolate;overflow:hidden}.final-cta>.asset-frame{position:absolute;inset-inline-end:12px;inset-block-end:0;opacity:.2;z-index:-1;width:172px}.final-cta>.actions{max-width:100%}.enquiry-card .button{white-space:normal}.industry-grid .text-link{font-size:13px}.footer-grid{gap:32px}
@media(max-width:1250px){.site-header nav{gap:12px;font-size:14px}.header-inner{gap:12px}.small{padding:10px;font-size:14px}.site-header nav a{line-height:1.5}.hero-grid{gap:36px}.hero-art{min-height:390px}.header-actions .icon{width:18px}.final-cta{align-items:stretch}}
@media(max-width:1100px){.site-header nav{display:none}.menu-toggle{display:block}.site-header nav.is-open{display:flex;position:absolute;inset-inline:0;inset-block-start:100%;max-height:calc(100dvh - 150px);overflow:auto;padding:20px 24px;background:#fff;border-block:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;font-size:16px}.site-header nav>a{padding-block:10px}.dropdown-panel{position:static;width:100%;box-shadow:none;padding:16px}.header-inner{min-height:88px}.hero-art{min-height:370px}.hero-small{width:175px}.hero-main figcaption{font-size:13px}}
@media(max-width:767px){.hero{padding-block:44px 76px}.hero-grid,.page-hero .split{grid-template-columns:1fr;gap:48px}.hero-art{max-width:400px;min-height:375px;padding-inline:0}.hero-main{max-width:88%}.hero-small{width:185px;inset-block-end:0}.art-star{inset-block-start:-25px;font-size:52px}.art-note{font-size:11px;inset-block-end:-35px}.page-media{padding:10px}.page-media .media-figure{min-height:190px}.media-heading{align-items:flex-start;flex-direction:column;gap:20px}.media-heading>.asset-frame{width:220px}.about-mark{min-height:240px;max-width:360px}.showcase figure{padding:16px}.detail-images>.media-figure{flex-basis:100%;padding:16px}.illustration-gallery .media-figure{padding:16px}.illustration-gallery .mini-illustration{flex-basis:100%;min-height:150px}.hero-copy .eyebrow{font-size:12px}.final-cta{padding:32px 24px}.service-card p{font-size:16px}.footer-grid>div>a{font-size:14px}.footer p{font-size:16px}.section-heading.row{gap:16px}.contact-main{padding:24px}.button{min-height:50px}}
@media(max-width:380px){.wrap{width:calc(100% - 32px)}.hero-art{min-height:330px}.hero-small{width:155px}.hero-main figcaption{font-size:12px}.hero .actions{gap:10px}.hero .button{padding:12px 10px;font-size:15px}.hero .button .icon{width:18px}.hero-small figcaption{font-size:10px}.header-inner{min-height:80px}.footer-bottom>div{flex-wrap:wrap;gap:16px}.contact-details>div{flex-wrap:wrap;gap:6px}.footer-grid{column-gap:18px}}
.illustration-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}.illustration-gallery .media-figure{grid-column:span 3;max-width:none}.illustration-gallery .mini-illustration{grid-column:span 2;max-width:none;min-height:180px}@media(max-width:767px){.illustration-gallery{grid-template-columns:1fr}.illustration-gallery .media-figure,.illustration-gallery .mini-illustration{grid-column:auto}.illustration-gallery .mini-illustration{min-height:150px}}
