@font-face{font-family:'Almarai';font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/almarai-400-arabic.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'Almarai';font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/almarai-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Almarai';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/almarai-700-arabic.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'Almarai';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/almarai-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
@font-face{font-family:'Almarai';font-style:normal;font-weight:800;font-display:optional;src:url(/fonts/almarai-800-arabic.woff2) format('woff2');unicode-range:U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1}
@font-face{font-family:'Almarai';font-style:normal;font-weight:800;font-display:optional;src:url(/fonts/almarai-800-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD}
:root{--navy:#052976;--navy2:#041F5C;--ink:#0B1F3A;--mut:#5B6475;--line:#D9DEE8;--paper:#FAFAF7;--soft:#EEF1F7;--onnavy:#E3EAF8;--onnavy2:#4CC4FF;--indigo:#2633FF;--indigo2:#1E29CC;--sky:#4CC4FF;--act:#2633FF;--focus:#2633FF;
--c1:#2633FF;--c2:#138A55;--c3:#2633FF;--gut:clamp(16px,5vw,72px);--max:1180px;color-scheme:light;--card:#FFFFFF;--link:#052976;--field:#8A93A6}
.top,.hero,.phero,.contact,footer,.util,.mbar,.stats,.fl,.hx,.opp-wa,dialog.lb{--focus:#4CC4FF}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:'Almarai',Tahoma,Arial,sans-serif;line-height:1.7;font-size:16px}
body.ltr{line-height:1.6}
a{color:inherit}
img{max-width:100%}
.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
.lat{direction:ltr;unicode-bidi:isolate}
.nw{white-space:nowrap}
h1,h2,h3{text-wrap:balance;margin:0}
.eyebrow{font-weight:700;font-size:13px;letter-spacing:.3px;color:var(--mut);margin:0 0 10px}
.en{font-weight:700;font-size:12px;letter-spacing:3px;text-transform:uppercase;direction:ltr;unicode-bidi:isolate;display:inline-block}
.skip{position:absolute;inset-inline-start:-9999px;top:0;background:#fff;color:#052976;padding:8px 12px;z-index:50}
.skip:focus{inset-inline-start:12px}
.top{background:var(--navy);color:#fff;position:sticky;top:env(safe-area-inset-top,0px);z-index:20;border-bottom:1px solid rgba(255,255,255,.08)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand img{width:44px;height:44px;border-radius:50%}
.brand b{font-weight:800;font-size:18px;display:block;line-height:1.2}
.brand .en{font-size:10px;color:var(--onnavy2);letter-spacing:2.5px}
.nav{display:flex;gap:20px;font-size:15px;align-items:center}
.nav a{text-decoration:none;color:var(--onnavy);padding-block:4px;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current=page]{color:#fff;border-bottom-color:rgba(255,255,255,.6)}
.acts{display:flex;gap:10px;align-items:center}
.lang{font-size:13px;font-weight:700;color:var(--onnavy);text-decoration:none;border:1px solid rgba(255,255,255,.3);border-radius:5px;padding:5px 9px}
.menu{display:none;background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:6px;padding:6px 10px;font-family:inherit;font-weight:700;font-size:14px;cursor:pointer}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--indigo);color:#fff;font-weight:800;font-size:15px;padding:10px 18px;border-radius:6px;text-decoration:none;border:1px solid var(--sky);font-family:inherit;cursor:pointer}
.btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.4)}
.btn.dark{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.btn.line{background:transparent;color:var(--act);border-color:var(--act)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.hero{background:var(--navy);color:#fff;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding-block:56px 64px}
.hero h1{font-weight:800;font-size:clamp(40px,6vw,72px);line-height:1.1}
.hero .arms{font-weight:700;font-size:clamp(20px,2.4vw,28px);color:var(--onnavy);margin:12px 0 6px}
.hero .arms i{font-style:normal;color:var(--onnavy2);padding-inline:2px}
.hero .en{color:var(--onnavy2);margin-bottom:22px}
.hero p.lead{color:var(--onnavy);max-width:34em;margin:0 0 26px;font-size:17px}
.cta{display:flex;gap:12px;flex-wrap:wrap}
.bridge{width:100%;height:auto;max-width:640px;justify-self:center}
.eyebrow.on{color:var(--onnavy2)}
.phero{background:var(--navy);color:#fff}
.phero .wrap{padding-block:48px 52px;display:grid;grid-template-columns:1.3fr .7fr;gap:32px;align-items:end}
.phero h1{font-weight:800;font-size:clamp(34px,5vw,56px);line-height:1.15;display:flex;align-items:center;gap:14px}
.phero h1 .dot{width:16px;height:16px;border-radius:50%;background:var(--k,#fff);flex:none}
.phero p{color:var(--onnavy);margin:12px 0 0;max-width:36em;font-size:17px}
.phero .en{color:var(--onnavy2);margin-top:8px}
.crumb{font-size:13px;color:var(--onnavy2);margin-bottom:14px}
.crumb a{text-decoration:none;color:var(--onnavy)}
.stats{background:var(--navy2);color:#fff}
.stats .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 0;padding-block:22px}
.stats .cap{font-size:13px;font-weight:700;color:var(--onnavy2);margin-inline-end:28px}
.st{padding-inline:28px;border-inline-start:1px solid rgba(255,255,255,.18)}
.stats .cap+.st{border-inline-start:none;padding-inline-start:0}
.st b{font-weight:800;font-size:28px;direction:ltr;unicode-bidi:isolate;display:inline-block;font-variant-numeric:tabular-nums}
.st span{display:block;font-size:14px;color:var(--onnavy)}
.tools{margin-inline-start:auto;font-size:12px;color:var(--onnavy2)}
section.s,div.s{padding-block:72px}
section.s.soft{background:var(--soft)}
.head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:34px}
.head h2{font-weight:800;font-size:clamp(28px,3.6vw,40px);line-height:1.2}
.head p{margin:0;color:var(--mut);max-width:34em}
.more{font-weight:700;color:var(--act);text-decoration:none;border-bottom:1px solid currentColor}
.arms-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:2px solid var(--ink)}
.arm{padding-block:26px 8px;padding-inline-end:28px;margin-inline-end:28px;border-inline-end:1px solid var(--line);display:flex;flex-direction:column}
.arm:last-child{border-inline-end:none;margin-inline-end:0;padding-inline-end:0}
.arm .en{font-size:11px;color:var(--mut)}
.arm h3{font-weight:800;font-size:24px;margin:6px 0 14px;display:flex;align-items:center;gap:10px}
.arm h3::before{content:"";width:12px;height:12px;border-radius:50%;background:var(--k)}
.arm ul{list-style:none;margin:0 0 18px;padding:0}
.arm li{padding:9px 0;border-top:1px solid var(--line);font-size:15.5px}
.arm .more{margin-top:auto;align-self:flex-start}
.svc{display:grid;grid-template-columns:repeat(2,1fr);gap:0 48px;border-top:2px solid var(--ink)}
.svc article{padding-block:22px;border-bottom:1px solid var(--line)}
.svc h3{font-weight:800;font-size:20px;margin-bottom:6px}
.svc p{margin:0;color:var(--mut);font-size:15.5px}
.deliv{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.deliv div{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:18px}
.deliv b{display:block;font-weight:800;font-size:16px;margin-bottom:4px}
.deliv span{color:var(--mut);font-size:14.5px}
.steps{display:grid;grid-template-columns:repeat(4,1fr)}
.step{padding-inline-end:24px;margin-inline-end:24px;border-inline-end:1px solid var(--line)}
.step:last-child{border-inline-end:none;margin-inline-end:0;padding-inline-end:0}
.step .n{font-weight:800;font-size:34px;color:var(--link);direction:ltr;unicode-bidi:isolate;display:block;font-variant-numeric:tabular-nums}
.step h3{font-weight:800;font-size:19px;margin:6px 0 8px}
.step p{margin:0;color:var(--mut);font-size:15px}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:26px}
.chip{font-family:inherit;font-size:14px;font-weight:700;padding:7px 14px;border-radius:6px;border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer}
.chip[aria-pressed=true]{background:var(--navy);color:#fff;border-color:var(--link)}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.grid.three{grid-template-columns:repeat(3,1fr);gap:22px}
.pj{margin:0}
.pj button{all:unset;cursor:zoom-in;display:block;width:100%}
.pj button:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
.pj img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;border-radius:4px;background:var(--soft)}
.pj figcaption{padding-top:12px;display:grid;gap:2px}
.pj b{font-weight:800;font-size:18px}
.grid.three .pj b{font-size:16.5px}
.pj .meta{color:var(--mut);font-size:14px}
.pj .tag{font-size:12px;font-weight:700;color:var(--link)}
.note{margin-top:26px;color:var(--mut);font-size:13px}
dialog.lb{border:none;padding:0;background:transparent;max-width:min(1200px,94vw);width:100%}
dialog.lb::backdrop{background:rgba(3,14,40,.88)}
dialog.lb img{width:100%;height:auto;display:block;border-radius:4px}
dialog.lb .cap{color:#fff;display:flex;justify-content:space-between;gap:12px;align-items:center;padding-top:10px;flex-wrap:wrap}
dialog.lb .cap b{font-weight:800}
dialog.lb .cap span{color:var(--onnavy)}
dialog.lb .x{font-family:inherit;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:6px;padding:6px 12px;cursor:pointer;font-weight:700}
.two{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start}
.prose p{margin:0 0 16px;max-width:38em}
.fact{border-top:2px solid var(--ink)}
.fact div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.fact dt{color:var(--mut)}
.fact dd{margin:0;font-weight:700;text-align:end}
.vals{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.vals div{border-top:2px solid var(--navy);padding-top:14px}
.vals b{font-weight:800;font-size:18px;display:block;margin-bottom:6px}
.vals span{color:var(--mut);font-size:15px}
form.wa{display:grid;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:24px}
form.wa .r2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:grid;gap:6px;font-weight:700;font-size:14px}
input,select,textarea{font-family:inherit;font-size:15px;color:var(--ink);background:var(--card);border:1px solid var(--field);border-radius:6px;padding:10px 12px;width:100%}
textarea{min-height:120px;resize:vertical}
.hint{font-size:13px;color:var(--mut);font-weight:400}
.out{display:none;gap:10px;border-top:1px solid var(--line);padding-top:14px}
.out.on{display:grid}
.out a{justify-self:start}
.contact{background:var(--navy);color:#fff}
.contact .wrap{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-block:64px}
.contact h2{font-weight:800;font-size:clamp(28px,3.6vw,40px)}
.contact p{color:var(--onnavy)}
.rows{display:grid;border-top:1px solid rgba(255,255,255,.2)}
.rows.light{border-top-color:var(--line)}
.row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.2);flex-wrap:wrap}
.rows.light .row{border-bottom-color:var(--line)}
.row .k{color:var(--onnavy2);font-size:14px}
.rows.light .row .k{color:var(--mut)}
.row .v{font-weight:700;font-size:17px}
.copy{font-family:inherit;font-size:12px;font-weight:700;color:inherit;background:transparent;border:1px solid currentColor;opacity:.8;border-radius:5px;padding:4px 10px;cursor:pointer}
footer{background:var(--navy2);color:var(--onnavy2);font-size:14px}
footer a{text-decoration:none;color:var(--onnavy)}
footer a:hover{color:#fff}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px;padding-block:44px 30px}
.fbrand b{font-weight:800;font-size:19px;color:#fff;display:block;margin-bottom:8px}
.fbrand p{margin:0;max-width:24em;line-height:1.7}
footer nav{display:flex;flex-direction:column;gap:9px;align-items:flex-start}
footer nav h2{font-size:13px;font-weight:700;color:#fff;margin:0 0 4px}
.fbar{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-block:16px;border-top:1px solid rgba(255,255,255,.1);font-size:13px}
@media (max-width:980px){
.menu{display:inline-block}
.nav{display:none;position:absolute;inset-inline:0;top:100%;background:var(--navy);flex-direction:column;align-items:stretch;gap:0;padding:8px var(--gut) 16px;border-bottom:1px solid rgba(255,255,255,.1)}
.nav.open{display:flex}
.nav a{padding-block:12px;border-bottom:1px solid rgba(255,255,255,.08)}
.top .wrap{position:relative}
.hero .wrap,.contact .wrap,.phero .wrap,.two{grid-template-columns:1fr}
.bridge{order:-1;max-width:460px}
.arms-grid,.steps,.svc,.deliv,.vals,.grid.three{grid-template-columns:1fr}
.arm,.step{border-inline-end:none;margin-inline-end:0;padding-inline-end:0;border-bottom:1px solid var(--line);padding-bottom:18px}
.step{padding-top:18px}
.grid{grid-template-columns:1fr}
.st{padding-inline:16px}.tools{margin-inline-start:0;width:100%}
form.wa .r2{grid-template-columns:1fr}
.acts .btn{display:none}
}
@media (min-width:981px) and (max-width:1120px){.grid.three{grid-template-columns:repeat(2,1fr)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media (max-width:600px){
.hero h1{font-size:clamp(30px,9.4vw,40px)}
.hero .arms .nw{white-space:nowrap}
.hero .arms{font-size:18px}
.phero h1{font-size:clamp(28px,8.4vw,38px)}
.row .v{font-size:15px}
.stats .cap{width:100%;margin-inline-end:0}
.stats .cap+.st{padding-inline-start:0}
}
.hero .wrap>*,.phero .wrap>*,.contact .wrap>*,.two>*{min-width:0}
@media (max-width:980px){.hero .wrap,.contact .wrap,.phero .wrap,.two{grid-template-columns:minmax(0,1fr)}}
.mt18{margin-top:18px}.mt28{margin-top:28px}
.k1{--k:var(--c1)}.k2{--k:var(--c2)}.k3{--k:var(--c3)}
.note.flush{margin-top:0}
.err{color:#B42318;font-weight:700;font-size:14px;margin:0}
.hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:0}
picture{display:block}
.brand picture{flex:none}
.arl{font-weight:700;font-size:14px;display:inline-block;direction:rtl;unicode-bidi:isolate}
.hero .arl{color:var(--onnavy2);margin-bottom:22px}
.phero .arl{color:var(--onnavy2);margin-top:8px}
.arm .arl{font-size:13px;color:var(--mut)}
a.v{text-decoration:none;color:inherit}
a.v:hover{text-decoration:underline}
.out .msg{font-weight:700}
.out .msg.ok{color:var(--c2)}
.out .msg.bad{color:#B42318}
form.wa .hint a{color:var(--act)}
button[disabled]{opacity:.6;cursor:progress}
.legal{max-width:52em}
.legal h2{font-weight:800;font-size:21px;margin:30px 0 8px}
.legal h2:first-child{margin-top:0}
.legal p{margin:0;color:var(--ink)}
.legal a{color:var(--act)}
@media print{.top,.contact,footer,.menu{display:none}.phero,.hero{background:none;color:var(--ink)}}
.mbar{display:none}
a.copy{text-decoration:none;display:inline-block}
@media (max-width:980px){
.mbar{display:grid;grid-template-columns:repeat(3,1fr);position:fixed;inset-inline:0;bottom:0;z-index:30;background:var(--navy);border-top:1px solid rgba(255,255,255,.18);padding-bottom:env(safe-area-inset-bottom,0px)}
.mbar a{color:#fff;text-decoration:none;text-align:center;padding:13px 4px;font-weight:800;font-size:14.5px}
.mbar a+a{border-inline-start:1px solid rgba(255,255,255,.18)}
.mbar a.pri{background:#fff;color:#052976}
body{padding-bottom:calc(58px + env(safe-area-inset-bottom,0px))}
}
@media print{.mbar{display:none}}
.sectors{padding-top:0}
.secs{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.sec{display:grid;gap:6px;text-decoration:none;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:6px;padding:18px;background:var(--card)}
.sec b{font-weight:800;font-size:17px}
.sec span{color:var(--mut);font-size:14.5px}
.sec:hover{border-color:var(--link)}
.ticks{list-style:none;margin:6px 0 0;padding:0}
.ticks li{position:relative;padding-inline-start:18px;margin:6px 0;color:var(--mut);font-size:15px}
.ticks li::before{content:"";position:absolute;inset-inline-start:0;top:.7em;width:8px;height:2px;background:var(--navy)}
.flow{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch;list-style:none;margin:0;padding:0}
.bu{flex:1 1 120px;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:14px 12px;display:grid;gap:4px;text-align:center}
.bu .op{font-weight:800;color:var(--link);font-size:15px}
.bu b{font-weight:800;font-size:15.5px}
.bu.tot{background:var(--navy);border-color:var(--link);color:#fff}
.bu.tot .op{color:var(--onnavy2)}
.h2s{font-weight:800;font-size:clamp(22px,2.6vw,28px);margin:0 0 18px}
.tags3{display:grid;gap:12px}
.tags3 div{border-inline-start:3px solid var(--navy);padding:4px 14px}
.tags3 b{display:block;font-weight:800;font-size:17px}
.tags3 span{color:var(--mut);font-size:15px}
.refs{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.refs li{padding:12px 0;border-bottom:1px solid var(--line);font-weight:700}
.faq{max-width:52em}
.faq details{border-bottom:1px solid var(--line)}
.faq details:first-child{border-top:2px solid var(--ink)}
.faq summary{cursor:pointer;list-style:none;padding:18px 0;font-weight:800;font-size:17.5px;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-weight:800;color:var(--link);font-size:22px;line-height:1}
.faq details[open] summary::after{content:"−"}
.faq details p{margin:0 0 18px;color:var(--mut);max-width:46em}
.check{margin-top:26px;background:var(--soft);border-radius:8px;padding:18px 20px}
.check ul{margin:0;padding-inline-start:20px}
.check li{margin:6px 0}
@media (max-width:980px){
.fgrid{grid-template-columns:1fr 1fr;gap:26px}
.fbrand{grid-column:1/-1}
.secs{grid-template-columns:1fr 1fr}
.bu{flex-basis:30%}
}
@media (max-width:600px){.secs{grid-template-columns:1fr}.bu{flex-basis:44%}}
.soc{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.soc a{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.28);color:#fff;transition:background .2s,border-color .2s,color .2s}
.soc a:hover{background:#fff;color:#052976;border-color:#fff}
.soc .ico{width:18px;height:18px}
.soc.lightbg{margin-top:18px}
.soc.lightbg a{border-color:var(--line);color:var(--link);background:var(--card)}
.soc.lightbg a:hover{background:var(--navy);color:#fff;border-color:var(--link)}
footer .soc a{width:36px;height:36px}
section.xs{background:var(--navy);color:#fff;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:32px 32px}
.xs .head h2{color:#fff}
.more.on{color:#fff}
.xgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid rgba(255,255,255,.22)}
.xc{padding:22px 22px 6px 0;margin-inline-end:22px;border-inline-end:1px solid rgba(255,255,255,.14);display:grid;gap:8px}
.xc:last-child{border-inline-end:none;margin-inline-end:0}
.xc b{font-weight:800;font-size:20px}
.xc span{color:var(--onnavy);font-size:14.5px}
.exl{display:grid;border-top:2px solid var(--ink)}
.exr{display:grid;gap:4px;padding:14px 0;border-bottom:1px solid var(--line)}
.exr b{font-weight:800;font-size:16.5px}
.exr span{color:var(--mut);font-size:14.5px}
.areas{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.area{border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:6px;padding:18px 18px 10px;background:var(--card)}
.area h3{font-weight:800;font-size:18px;margin-bottom:4px}
.tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.tool{border:1px solid var(--navy);color:var(--link);border-radius:6px;padding:6px 14px;font-weight:700;font-size:14px;background:var(--card)}
.svc{counter-reset:sv}
.svc h3::before{counter-increment:sv;content:counter(sv,decimal-leading-zero);display:block;font-size:13px;font-weight:800;color:var(--k,var(--navy));letter-spacing:1px;margin-bottom:4px;direction:ltr;unicode-bidi:isolate;text-align:start}
.hero{background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:40px 40px}
.top{transition:box-shadow .2s}
.top.scrolled{box-shadow:0 6px 20px rgba(3,14,40,.28)}
.btn{transition:transform .15s,background .2s,color .2s,border-color .2s}
.btn:hover{transform:translateY(-1px)}
.btn.ghost:hover{background:rgba(255,255,255,.1)}
.btn:hover,.btn.dark:hover{background:var(--indigo2)}
.btn.line:hover{background:var(--indigo);color:#fff;border-color:var(--indigo)}
.pj picture{overflow:hidden;border-radius:4px}
.pj img{transition:transform .5s ease}
.pj button:hover img{transform:scale(1.035)}
.arm,.sec,.area,.deliv div{transition:border-color .2s,box-shadow .2s}
.sec:hover,.area:hover,.deliv div:hover{box-shadow:0 8px 24px rgba(5,41,118,.08)}
.js .rv{transform:translateY(16px);transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.js .rv.in{transform:none}
.totop{position:fixed;inset-inline-end:18px;bottom:18px;z-index:25;width:44px;height:44px;border-radius:50%;border:none;background:var(--navy);color:#fff;font-size:20px;font-weight:800;cursor:pointer;box-shadow:0 6px 18px rgba(3,14,40,.3);opacity:0;pointer-events:none;transition:opacity .2s}
.totop.on{opacity:1;pointer-events:auto}
@media (max-width:980px){
.xgrid,.areas{grid-template-columns:1fr 1fr}
.xc{border-inline-end:none;margin-inline-end:0;border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:18px}
.totop{bottom:calc(64px + env(safe-area-inset-bottom,0px))}
}
@media (max-width:600px){.xgrid,.areas{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.js .rv{transform:none;transition:none}.pj img,.btn{transition:none}.btn:hover{transform:none}}
@media print{.totop,.soc{display:none}}
.nav a{white-space:nowrap}
@media (min-width:981px) and (max-width:1200px){.acts .btn{display:none}.nav{gap:14px;font-size:14.5px}}
@media (min-width:981px) and (max-width:1060px){.brand .en{display:none}.nav{gap:11px;font-size:14px}}
:root{--fs-h1:clamp(34px,5vw,56px);--fs-h1-hero:clamp(40px,6vw,72px);--fs-h2:clamp(28px,3.6vw,40px);--fs-h2s:clamp(22px,2.6vw,28px);--fs-h3:19px;--fs-h3-lg:22px;--fs-body:16px;--fs-sm:15px;--fs-xs:13px}
.hero h1{font-size:var(--fs-h1-hero)}
.phero h1{font-size:var(--fs-h1)}
.head h2,.contact h2{font-size:var(--fs-h2)}
.h2s{font-size:var(--fs-h2s)}
.arm h3{font-size:var(--fs-h3-lg)}
.svc h3,.step h3,.area h3,.pj b,.grid.three .pj b,.sec b,.vals b,.tags3 b,.deliv b,.exr b,.faq summary{font-size:var(--fs-h3)}
.xc b{font-size:var(--fs-h3)}
.svc p,.step p,.arm li,.sec span,.area .ticks li,.vals span,.tags3 span,.deliv span,.exr span,.xc span,.pj .meta,.faq details p,.ticks li{font-size:var(--fs-sm)}
.eyebrow,.note,.hint,.crumb,.pj .tag{font-size:var(--fs-xs)}
.btn{font-size:var(--fs-sm)}
.st b{font-size:30px;line-height:1.1;display:flex;align-items:baseline;gap:6px;direction:inherit}
.st b small{font-size:13px;font-weight:700;color:var(--onnavy2)}
.st b .num{direction:ltr;unicode-bidi:isolate;font-variant-numeric:tabular-nums}
.st span{max-width:17em;line-height:1.5;margin-top:4px}
.stats .wrap{align-items:flex-start;gap:14px 0}
.stats .cap{align-self:center}
footer nav a{display:inline-flex;align-items:center;min-height:32px}
.fbar a{display:inline-flex;align-items:center;min-height:32px}
@media (max-width:980px){.st{padding-inline:14px}.st b{font-size:26px}}
.brand .en{white-space:nowrap}
@media (max-width:400px){.brand{gap:9px}.brand img{width:40px;height:40px}.brand .en{letter-spacing:1.4px;font-size:9.5px}}
@media (min-width:1100px){.stats .wrap{display:grid;grid-template-columns:auto repeat(3,minmax(0,1fr)) auto;align-items:start}.tools{margin-inline-start:0;align-self:center}}
.st b .num{display:inline;font-size:inherit;margin:0;max-width:none;color:#fff;line-height:inherit}
@media (min-width:981px){.hero .arms{font-size:clamp(18px,1.75vw,26px)}}
@media (max-width:600px){.st{width:100%;padding:12px 0 0;border-inline-start:none;border-top:1px solid rgba(255,255,255,.14)}.stats .cap+.st{border-top:none;padding-top:0}.tools{margin-inline-start:0;padding-top:10px}}
@media (min-width:601px) and (max-width:1099px){.stats .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 0}.stats .cap,.stats .tools{grid-column:1/-1;margin:0}}
.agrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.agrid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.agrid.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.acard{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);border-top:3px solid var(--k,var(--navy));border-radius:6px;padding:20px 20px 18px}
a.acard:hover{border-color:var(--k,var(--navy))}
.acard h2,.acard h3{font-weight:800;font-size:var(--fs-h3);line-height:1.45;margin:0}
.agrid.two .acard h2{font-size:var(--fs-h3-lg)}
.acard h2 a{color:inherit;text-decoration:none}.acard h2 a:hover{color:var(--link);text-decoration:underline}
.ameta{font-size:var(--fs-xs);color:var(--mut);font-weight:700;margin:0}
.ameta.on{color:var(--onnavy2);margin-top:14px}
.ad{color:var(--mut);font-size:var(--fs-sm);line-height:1.7;margin:0}
.acard .go{margin-top:auto;padding-top:6px;font-weight:800;font-size:var(--fs-sm);color:var(--link)}
.art-hero h1{font-size:clamp(28px,4vw,44px);display:block}
.art-hero .wrap{grid-template-columns:1fr}
.art-hero p{max-width:44em}
.awrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px;align-items:start}
.art{max-width:46em;font-size:17px;line-height:1.95}
.art h2{font-weight:800;font-size:clamp(20px,2.2vw,24px);line-height:1.4;margin:34px 0 10px}
.art h2:first-child{margin-top:0}
.art p{margin:0 0 14px}
.art ul,.art ol{margin:0 0 16px;padding-inline-start:22px}
.art li{margin:6px 0}
.art a{color:var(--link)}
.art .fx{background:var(--soft);border-inline-start:4px solid var(--navy);border-radius:4px;padding:14px 18px;font-weight:800;line-height:1.8}
.art .anote{font-size:var(--fs-sm);color:var(--mut);border-top:1px solid var(--line);padding-top:12px;margin-top:22px}
.acta{position:sticky;top:96px;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:6px;padding:20px;display:grid;gap:12px;background:var(--card)}
.acta .eyebrow{margin:0}
.acta .big{font-weight:800;font-size:19px;margin:0;line-height:1.5}
.acta .btn{justify-content:center}
.acta .more{justify-self:start;font-size:var(--fs-sm)}
.nsteps{list-style:none;margin:0;padding:0;counter-reset:n;display:grid;gap:10px}
.nsteps li{counter-increment:n;display:flex;gap:12px;align-items:baseline;padding:12px 14px;background:var(--soft);border-radius:6px}
.nsteps li::before{content:counter(n,decimal-leading-zero);font-weight:800;color:var(--link);font-size:var(--fs-sm);direction:ltr;unicode-bidi:isolate;flex:none}
@media (max-width:1120px){.agrid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:980px){.agrid{grid-template-columns:repeat(2,minmax(0,1fr))}.awrap{grid-template-columns:minmax(0,1fr);gap:28px}.acta{position:static}}
@media (max-width:600px){.agrid,.agrid.four,.agrid.two{grid-template-columns:minmax(0,1fr)}.art{font-size:16px}}
@media print{
.top,.mbar,.totop,.contact,footer .fbar,footer nav,.soc,.cta,.acta,.filters,.lb,.skip,.arts,.copy,#q-form,.hero svg{display:none!important}
body{background:#fff;color:#000;font-size:11pt}
.hero,.phero,.stats,.xs{background:#fff!important;color:#000!important}
.hero *,.phero *,.stats *,.xs *{color:#000!important}
section.s,div.s{padding-block:14pt}
a{color:#000;text-decoration:none}
.art a[href^="http"]::after{content:" (" attr(href) ")";font-size:9pt;color:#444}
.pj,.acard,.step,.area,.svc article{break-inside:avoid}
.js .rv{transform:none!important;opacity:1!important}
}
.wa [aria-invalid="true"]{border-color:#B42318;box-shadow:0 0 0 1px #B42318}
.ferr{display:block;color:#B42318;font-weight:700;font-size:13px;margin-top:6px}
.dl .lat{font-weight:400;opacity:.8}
html{scroll-padding-top:88px}
@media (max-width:980px){.hero .bridge{order:0;max-width:340px;margin-inline:auto;opacity:.9}}
@media (max-width:600px){.hero .bridge{max-width:280px}}
dialog.lb .lbn{display:flex;gap:8px}
dialog.lb .pv,dialog.lb .nx{font-family:inherit;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:6px;min-width:44px;min-height:36px;cursor:pointer;font-size:18px;font-weight:800}
dialog.lb .cnt{color:var(--onnavy2);font-size:13px;margin-inline-start:6px}
.empty{background:var(--soft);border-radius:8px;padding:18px 20px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-weight:700}
.util{background:var(--navy2);color:var(--onnavy2);font-size:13px}
.util .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:34px}
.util .uc{display:flex;gap:18px}
.util a{color:var(--onnavy);text-decoration:none;display:inline-flex;align-items:center;min-height:28px}
.util a:hover{color:#fff;text-decoration:underline}
@media (max-width:980px){.util{display:none}}
@media print{.util{display:none}}
.faqwrap{align-items:start}
.vwrap[hidden]{display:none}
.vwrap>.hint{display:block;margin-top:6px}
.org{display:flex;flex-direction:column;align-items:center}
.org .node{position:relative;display:grid;justify-items:center;gap:4px;text-align:center;background:var(--card);border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:8px;padding:18px 16px;width:250px;max-width:100%}
.org .node.lead{border-top-color:var(--c2);background:var(--soft)}
.org .node b{font-weight:800;font-size:var(--fs-h3);line-height:1.35}
.org .node span:not(.av){color:var(--mut);font-size:var(--fs-sm)}
.org .node a{font-size:var(--fs-xs);color:var(--link)}
.org .av{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:800;font-size:22px;object-fit:cover;margin-bottom:6px;letter-spacing:.5px}
.org-kids{list-style:none;margin:0;padding:34px 0 0;display:flex;justify-content:center;gap:0;position:relative;flex-wrap:wrap}
.org-kids::before{content:"";position:absolute;top:0;left:50%;width:2px;height:34px;background:var(--line);transform:translateX(-50%)}
.org-kids>li{position:relative;padding:17px 14px 0}
.org-kids>li::before{content:"";position:absolute;top:0;left:50%;width:2px;height:17px;background:var(--line);transform:translateX(-50%)}
.org-kids>li::after{content:"";position:absolute;top:0;height:2px;background:var(--line);left:0;right:0}
.org-kids>li:first-child::after{left:50%}
.org-kids>li:last-child::after{right:50%}
[dir="rtl"] .org-kids>li:first-child::after{left:0;right:50%}
[dir="rtl"] .org-kids>li:last-child::after{right:0;left:50%}
.org-kids>li:only-child::after{display:none}
.grp{position:relative}
.gbtn{background:none;border:0;border-bottom:2px solid transparent;color:var(--onnavy);font:inherit;padding:4px 0;cursor:pointer;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.gbtn::after{content:"";width:6px;height:6px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg);transition:transform .15s}
.grp.open .gbtn::after{transform:translateY(1px) rotate(225deg)}
.gbtn:hover,.gbtn.on,.grp.open .gbtn{color:#fff}
.gbtn.on{border-bottom-color:rgba(255,255,255,.6)}
.sub{display:none;position:absolute;top:calc(100% + 12px);inset-inline-start:-14px;min-width:260px;background:var(--card);border-radius:8px;box-shadow:0 14px 36px rgba(4,31,92,.22);padding:8px;z-index:40}
.sub::before{content:"";position:absolute;inset-inline:0;top:-14px;height:14px}
.grp.open .sub{display:block}
.nav .sub a{display:block;color:var(--ink);padding:10px 12px;border-radius:6px;border-bottom:0;white-space:nowrap;font-size:14.5px}
.nav .sub a:hover,.nav .sub a[aria-current=page]{background:var(--soft);color:var(--link);border-bottom:0}
html:not(.nav-js) .grp .sub{display:block;position:static;box-shadow:none;background:transparent;padding:0;min-width:0}
html:not(.nav-js) .nav .sub a{color:var(--onnavy)}
@media (hover:hover) and (min-width:981px){.grp:hover .sub{display:block}.grp:hover .gbtn::after{transform:translateY(1px) rotate(225deg)}}
@media (max-width:980px){
.grp{display:block}
.gbtn{width:100%;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.gbtn.on{border-bottom-color:rgba(255,255,255,.08)}
.sub{position:static;box-shadow:none;background:rgba(255,255,255,.04);border-radius:0;padding:4px 0;min-width:0}
.sub::before{display:none}
.nav .sub a{color:var(--onnavy);padding:11px 16px;border-radius:0;border-bottom:1px solid rgba(255,255,255,.05);white-space:normal}
.nav .sub a:hover,.nav .sub a[aria-current=page]{background:rgba(255,255,255,.08);color:#fff}
}
@media (max-width:980px){.nav{max-height:calc(100vh - 136px);max-height:calc(100dvh - 136px);overflow-y:auto;overscroll-behavior:contain}}
.soft+.sectors{padding-top:72px}
.fcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.fc{display:flex;flex-direction:column;gap:8px;background:var(--card);border:1px solid var(--line);border-top:3px solid var(--c2);border-radius:8px;padding:20px}
.fc b{font-weight:800;font-size:var(--fs-h3);line-height:1.4}
.fc span{color:var(--mut);font-size:var(--fs-sm);line-height:1.7}
.fc .btn{margin-top:auto;align-self:flex-start}
.dls{display:grid;gap:12px}
.dlf{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:16px 18px}
.dlf b{display:block;font-weight:800;font-size:var(--fs-h3)}
.dlf span{color:var(--mut);font-size:var(--fs-sm)}
.dlf .btn .lat{font-weight:400;font-size:13px}
.ind{position:relative;color:#fff;background:#041F5C url(/img/industrial-bg-900.webp) center/cover no-repeat}
.ind::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,31,92,.94),rgba(4,31,92,.78))}
.ind .wrap{position:relative;padding-block:64px;align-items:center}
.ind h2{font-weight:800;font-size:clamp(26px,3.2vw,36px);margin:0 0 10px}
.ind p{color:var(--onnavy);max-width:34em}
.ticks.on li{color:#fff}
.indfig{margin:0}
.indfig img{width:100%;height:auto;display:block;border-radius:8px;box-shadow:0 18px 40px rgba(0,0,0,.35)}
@media (min-width:981px){.ind{background-image:url(/img/industrial-bg.webp)}}
.ticks.on li::before{background:#4CC4FF}
.org .node.ss{border-top-color:var(--c3)}
.org .node.ss .av{background:var(--c3)}
.depts{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px;width:250px;max-width:100%;position:relative}
.depts::before{content:"";position:absolute;top:-10px;left:50%;width:2px;height:10px;background:var(--line);transform:translateX(-50%)}
.depts li{background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:8px 10px;font-size:13.5px;text-align:center;line-height:1.45}
@media (max-width:900px){.org-kids{flex-direction:column;align-items:center;flex-wrap:nowrap}.org-kids>li{padding:17px 0 0;width:100%;display:flex;flex-direction:column;align-items:center}.org-kids>li::after{display:none}.org-kids .node{width:260px}.depts{width:260px}}
:root[data-theme=dark]{--paper:#0B1F3A;--soft:#0F2545;--card:#12294A;--ink:#FAFAF7;--mut:#B6C0D3;--line:#22385C;--link:#4CC4FF;--act:#4CC4FF;--focus:#4CC4FF;--field:#2A3F63;color-scheme:dark}
.theme{background:transparent;border:1px solid rgba(255,255,255,.3);color:var(--onnavy);border-radius:5px;width:34px;height:30px;display:inline-grid;place-items:center;cursor:pointer;padding:0}
.theme:hover{color:#fff;border-color:rgba(255,255,255,.6)}
.theme svg{width:16px;height:16px}
.theme .sun{display:none}
:root[data-theme=dark] .theme .sun{display:block}:root[data-theme=dark] .theme .moon{display:none}
@media print{.theme{display:none}}
:root[data-theme=dark] .btn.dark{background:#2633FF;border-color:#2633FF}
.head .eyebrow{display:none}
.sec,.area,.acard,.fc,.acta,.org .node,.tm{border-top:1px solid var(--line)}
.org .node.lead{border-top:1px solid var(--line);background:var(--soft)}
.org span.av{display:none}
.org .node{padding:16px 14px}
.org .node.ss{border-top:1px solid var(--line)}

/* v11: project pages, search, form sections, careers */
[hidden]{display:none!important}
.srch{text-decoration:none}
.pjl{text-decoration:none;color:inherit}
.pjl:hover{color:var(--link);text-decoration:underline;text-underline-offset:3px}
.pjm{font-size:var(--fs-xs);font-weight:700;color:var(--link);text-decoration:none;justify-self:start;margin-top:2px}
.pjm:hover{text-decoration:underline}
.pcase{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:40px;align-items:start}
.pgal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.pgal .pj.big{grid-column:1/-1}
.pgal .pj b{font-size:var(--fs-sm)}
.pgal .pj.big b{font-size:var(--fs-h3)}
.pfacts{position:sticky;top:96px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:20px 20px 22px}
.pfacts .h2s{font-size:var(--fs-h3-lg);margin-bottom:8px}
.pfacts .row{padding:11px 0}
.pfacts .row .v{font-size:var(--fs-sm)}
.pfacts .note{margin-top:14px}
.pfacts .btn{width:100%;justify-content:center;text-align:center}
.secs.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}
.rels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.rel{display:grid;gap:3px;text-decoration:none;color:inherit;align-content:start}
.rel picture{display:block;overflow:hidden;border-radius:4px;margin-bottom:9px}
.rel img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;background:var(--soft)}
.rel .tag{font-size:var(--fs-xs);font-weight:700;color:var(--link)}
.rel b{font-weight:800;font-size:var(--fs-h3);line-height:1.4}
.rel .meta{color:var(--mut);font-size:var(--fs-sm)}
.rel:hover b{color:var(--link)}
.pnav{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}
.pnav a{display:grid;gap:2px;text-decoration:none;color:inherit;padding:14px 16px;border:1px solid var(--line);border-radius:6px;background:var(--card)}
.pnav a[rel=next]{text-align:end}
.pnav span{font-size:var(--fs-xs);font-weight:700;color:var(--mut)}
.pnav b{font-weight:800;line-height:1.45}
.pnav a:hover{border-color:var(--link)}
.org .node.adv{background:var(--card)}
@media (min-width:1101px){.org-kids>li{padding:17px 8px 0}.org-kids .node,.org-kids .depts{width:228px}}
@media (max-width:1100px){.org-kids{flex-direction:column;align-items:center;flex-wrap:nowrap}.org-kids>li{padding:17px 0 0;width:100%;display:flex;flex-direction:column;align-items:center}.org-kids>li::after{display:none}.org-kids .node{width:260px}.depts{width:260px}}
.fs{border:0;margin:0;padding:0;min-width:0;display:grid;gap:14px}
.fs+.fs{border-top:1px solid var(--line);padding-top:20px}
.fs legend{float:inline-start;width:100%;font-weight:800;font-size:17px;padding:0;margin:0 0 4px;display:flex;align-items:center;gap:10px}
.fs legend+*{clear:both}
.fsn{display:inline-block;font-size:12px;font-weight:800;color:#fff;background:var(--navy);border-radius:4px;padding:3px 7px;line-height:1.3;direction:ltr}
:root[data-theme=dark] .fsn{background:#2633FF}
.file input[type=file]{padding:9px 10px;background:var(--soft);cursor:pointer;font-size:14px}
.file input[type=file]::file-selector-button{font-family:inherit;font-weight:700;font-size:14px;border:1px solid var(--link);color:var(--link);background:var(--card);border-radius:5px;padding:6px 12px;margin-inline-end:12px;cursor:pointer}
input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#B42318}
.srch-wrap{max-width:880px}
.sform{display:flex;gap:10px;align-items:stretch}
.sform input{flex:1;font-size:17px;padding:12px 14px}
.sform .btn{justify-content:center}
.pops{margin-top:22px}
.pops .filters{margin:0}
.pops .chip{text-decoration:none;display:inline-block}
.s-status{margin:28px 0 12px;font-weight:700;color:var(--mut)}
.s-status a{color:var(--link)}
.srl{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.srl a{display:grid;gap:4px;text-decoration:none;color:inherit;padding:16px 18px;border:1px solid var(--line);border-radius:8px;background:var(--card)}
.srl a:hover{border-color:var(--link)}
.srl .sty{font-size:var(--fs-xs);font-weight:700;color:var(--link)}
.srl b{font-weight:800;font-size:var(--fs-h3);line-height:1.45}
.srl .sd{color:var(--mut);font-size:var(--fs-sm)}
.smap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.smap-col h2{font-weight:800;font-size:var(--fs-h3-lg);margin:0 0 12px;padding-bottom:8px;border-bottom:2px solid var(--navy)}
.smap-col a{display:block;text-decoration:none;color:inherit;padding:7px 0;border-bottom:1px solid var(--line);font-size:var(--fs-sm)}
.smap-col a:hover{color:var(--link)}
.arts .filters,.s .filters{margin-bottom:22px}
@media (max-width:980px){.smap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.smap{grid-template-columns:minmax(0,1fr)}}
@media (max-width:980px){.pcase{grid-template-columns:minmax(0,1fr);gap:28px}.pfacts{position:static}.rels{grid-template-columns:minmax(0,1fr)}.pnav{grid-template-columns:minmax(0,1fr)}.pnav a[rel=next]{text-align:start}}
@media (max-width:640px){.pgal{grid-template-columns:minmax(0,1fr)}.secs.two-col{grid-template-columns:minmax(0,1fr)}.sform{flex-direction:column}}
@media (max-width:430px){.top .wrap{gap:10px}.acts{gap:6px}.brand{gap:9px}}
.nav .nsrch{display:none}
@media (max-width:400px){.acts .srch{display:none}.nav .nsrch{display:block}}
@media (max-width:350px){.brand .en{display:none}.brand img{width:38px;height:38px}.theme{width:30px}.menu{padding:6px 8px}.lang{padding:5px 7px}}
@media (max-width:372px){.brand .en{letter-spacing:.4px}}
@media print{.pnav,.rels,.pfacts .btn,.sform,.pops,.pjm{display:none!important}.pcase{grid-template-columns:1fr}}

/* v13: photo heroes */
.phero.hi,.hero.hi{position:relative;isolation:isolate;overflow:hidden}
.pbg{position:absolute;inset:0;z-index:-1;margin:0}
.pbg img{width:100%;height:100%;object-fit:cover;display:block}
.pbg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,41,118,.95) 0%,rgba(5,41,118,.86) 50%,rgba(5,41,118,.66) 100%)}
[dir=rtl] .pbg::after{background:linear-gradient(-90deg,rgba(5,41,118,.95) 0%,rgba(5,41,118,.86) 50%,rgba(5,41,118,.66) 100%)}
.hero.hi .pbg::after{background:linear-gradient(180deg,rgba(5,41,118,.9) 0%,rgba(5,41,118,.84) 60%,rgba(5,41,118,.92) 100%)}
.hero.hi .bridge{opacity:.62}
[data-theme=dark] .pbg::after{background:linear-gradient(90deg,rgba(8,16,38,.95) 0%,rgba(8,16,38,.86) 50%,rgba(8,16,38,.7) 100%)}
[data-theme=dark] [dir=rtl] .pbg::after{background:linear-gradient(-90deg,rgba(8,16,38,.95) 0%,rgba(8,16,38,.86) 50%,rgba(8,16,38,.7) 100%)}
[data-theme=dark] .hero.hi .pbg::after{background:linear-gradient(180deg,rgba(8,16,38,.9),rgba(8,16,38,.9))}
@media print{.pbg{display:none}}
/* home sector cards */
.hcards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.hcard{display:grid;grid-template-rows:auto 1fr;text-decoration:none;color:inherit;background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.hcard:hover{border-color:var(--link)}
.hcard picture{display:block}
.hcard img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform .5s ease}
.hcard:hover img{transform:scale(1.04)}
.hcard .hb{display:grid;gap:6px;padding:14px 16px 16px;align-content:start}
.hcard b{font-size:18px}
.hcard span{color:var(--mut);font-size:14.5px}
.hcard .go{color:var(--link);font-weight:700;font-size:14px;margin-top:4px}
@media (max-width:980px){.hcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.fcards{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media (max-width:520px){.hcards{grid-template-columns:1fr}}
/* sector pages */
.sgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sdel{display:grid;gap:6px;padding:16px 18px;border:1px solid var(--line);border-inline-start:3px solid var(--navy);border-radius:6px;background:var(--card);text-decoration:none;color:inherit}
.sdel:hover{border-color:var(--link)}
.sdel b{font-size:16px}
.sdel span{color:var(--mut);font-size:14.5px}
@media (max-width:700px){.sgrid{grid-template-columns:1fr}}
/* article covers */
.cover{margin:0 0 24px;border-radius:6px;overflow:hidden;background:var(--soft)}
.cover img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
.cover figcaption{font-size:12px;color:var(--mut);padding:6px 10px 8px}
.cover figcaption a{color:inherit}
.acard>picture{display:block;margin:-20px -20px 8px}
.acard>picture img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
/* calculators */
.calcs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.calc{border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:8px;padding:20px;background:var(--card);display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-content:start;margin:0;min-width:0}
.calc h2{font-size:21px;margin:0}
.calc .cd{color:var(--mut);margin:0;font-size:15px}
.calc .cf{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.calc .cf.one{grid-template-columns:minmax(0,1fr)}
.calc label{display:grid;gap:4px;font-size:14px;font-weight:700;min-width:0}
.calc label .cu{font-weight:400;color:var(--mut);font-size:12px}
.calc input,.calc select{font:inherit;padding:9px 10px;border:1px solid var(--line);border-radius:4px;background:var(--card);color:inherit;width:100%;max-width:100%;min-width:0;text-overflow:ellipsis}
.calc input:focus-visible,.calc select:focus-visible{outline:2px solid var(--link);outline-offset:1px}
.calc .cr{background:var(--soft);border-radius:6px;padding:12px 14px;display:grid;gap:6px;min-height:64px;min-width:0}
.calc .cr div{display:flex;justify-content:space-between;gap:12px;align-items:baseline;font-size:14.5px;flex-wrap:wrap;min-width:0}
.calc .cr b{font-size:19px;white-space:nowrap}
.calc .cn{font-size:13px;color:var(--mut);margin:0;line-height:1.7}
.calc .ca{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:860px){.calcs{grid-template-columns:1fr}}
.calc .lite{background:var(--soft);color:var(--ink);border-color:var(--line)}
@media (max-width:350px){.calc .cf{grid-template-columns:minmax(0,1fr)}}
/* standards */
.std{display:grid;gap:28px}
.std h2{font-size:20px;margin:0 0 10px}
.std dl{margin:0;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.std .si{display:grid;grid-template-columns:minmax(200px,.42fr) 1fr;gap:6px 16px;padding:12px 16px;border-top:1px solid var(--line)}
.std .si:first-child{border-top:none}
.std dt{font-weight:800;margin:0}
.std dd{margin:0;color:var(--mut);font-size:15px}
@media (max-width:640px){.std .si{grid-template-columns:1fr;gap:2px}}
/* credits */
.cred{width:100%;border-collapse:collapse;font-size:15px}
.cred th,.cred td{text-align:start;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.cred th{font-size:13px;color:var(--mut);font-weight:700}
.cred td a{color:var(--link)}
.cred img{width:96px;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:4px;display:block}
@media (max-width:640px){.cred .ci{display:none}}
/* accessibility statement */
.acc h2{font-size:20px;margin:26px 0 8px}
/* newsletter */
.nl{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:22px;display:grid;grid-template-columns:1fr auto;gap:14px 28px;align-items:center}
.nl h2{margin:0 0 4px;font-size:16px;color:#fff}
.nl p{margin:0}
.nl form{display:flex;gap:8px;flex-wrap:nowrap;align-items:center}
.nl form .msg{display:none}
.nl form .msg:not([hidden]){display:block;flex-basis:auto}
.nl input[type=email]{font:inherit;font-size:15px;padding:10px 12px;border:1px solid rgba(255,255,255,.3);border-radius:4px;background:rgba(255,255,255,.08);color:#fff;min-width:250px}
.nl input[type=email]::placeholder{color:rgba(255,255,255,.55)}
.nl .hp{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.nl .msg{font-size:14px;color:#fff;margin:0;flex-basis:100%}
@media (max-width:700px){.nl{grid-template-columns:1fr}.nl form{flex-wrap:wrap}.nl input[type=email]{flex:1;min-width:180px}}
/* footer 5 columns + legal bar */
@media (min-width:981px){.fgrid.f5{grid-template-columns:1.35fr 1fr 1fr 1fr 1.1fr;gap:26px}}
footer nav.flegal{display:flex;flex-direction:row;align-items:center;gap:4px 18px;flex-wrap:wrap;flex-basis:100%}
footer nav a .lat{white-space:nowrap}
.fbar{align-items:center}
/* sector hub */
.shub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:700px){.shub{grid-template-columns:1fr}}

/* v14: footprint map */
.fmap-wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:28px;align-items:center}
.fmap{width:100%;height:auto;display:block;border-radius:8px;background:var(--soft)}
.fmap .nb path{fill:var(--line);stroke:var(--card);stroke-width:1}
.fmap .hl path{fill:#4CC4FF;stroke:var(--navy);stroke-width:1.2}
[data-theme=dark] .fmap .hl path{fill:#1E3466;stroke:#4CC4FF}
[data-theme=dark] .fmap .nb path{fill:#23263A;stroke:#0F2545}
.fmap .pin{cursor:pointer;outline:none}
.fmap .pin circle.dot{fill:var(--navy);stroke:#fff;stroke-width:2;transition:r .2s}
.fmap .pin circle.halo{fill:var(--navy);opacity:.18;transition:r .25s,opacity .25s}
.fmap .pin:hover circle.halo,.fmap .pin:focus-visible circle.halo,.fmap .pin[aria-pressed=true] circle.halo{r:26;opacity:.3}
.fmap .pin[aria-pressed=true] circle.dot{fill:#1ECF74;stroke:#fff}
.fmap .pin:focus-visible circle.dot{stroke:#1ECF74;stroke-width:3}
.fmap text{font-family:Almarai,Arial,sans-serif;font-weight:700;font-size:23px;fill:var(--ink);pointer-events:none;paint-order:stroke;stroke:var(--soft);stroke-width:4px;stroke-linejoin:round}
.fmap text.cnt{font-weight:400;font-size:17px;fill:var(--mut)}
[data-theme=dark] .fmap .pin circle.dot{fill:#4CC4FF;stroke:#0F2545}
.fleg{display:grid;gap:10px;align-content:start}
.fleg p{margin:0;color:var(--mut)}
.fcity{display:grid;grid-template-columns:auto 1fr auto;gap:10px 12px;align-items:center;padding:10px 14px;border:1px solid var(--line);border-radius:6px;background:var(--card);text-decoration:none;color:inherit;font:inherit;text-align:start;cursor:pointer}
.fcity:hover,.fcity[aria-pressed=true]{border-color:var(--link)}
.fcity[aria-pressed=true]{background:rgba(5,41,118,.06)}
.fcity i{width:10px;height:10px;border-radius:50%;background:var(--navy);display:inline-block}
.fcity[aria-pressed=true] i{background:#1ECF74}
.fcity b{font-size:15px}
.fcity span{color:var(--mut);font-size:13.5px}
.fcity .n{font-weight:800;color:var(--link);white-space:nowrap}
.fclr{justify-self:start;font-size:14px;color:var(--link);background:none;border:0;padding:4px 0;cursor:pointer;font-family:inherit;text-decoration:underline}
.fclr[hidden]{display:none}
@media (max-width:860px){.fmap-wrap{grid-template-columns:1fr}}
/* share bar */
.share{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:22px 0 6px;padding-top:14px;border-top:1px solid var(--line)}
.share .sh{font-size:13px;color:var(--mut);margin-inline-end:4px}
.share a,.share button{display:inline-flex;align-items:center;gap:6px;font:700 13.5px/1 inherit;font-family:inherit;padding:8px 12px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink);text-decoration:none;cursor:pointer}
.share a:hover,.share button:hover{border-color:var(--link);color:var(--link)}
.share svg{width:15px;height:15px;fill:currentColor}
.share .ok{font-size:13px;color:#0B7A3B}
[data-theme=dark] .share .ok{color:#1ECF74}
/* service FAQ */
.sfaq{max-width:52em}
/* glossary */
.gs{display:flex;gap:10px;align-items:center;margin:0 0 18px;flex-wrap:wrap}
.gs input{flex:1;min-width:220px;font:inherit;font-size:16px;padding:11px 14px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:inherit}
.gs .gc{font-size:14px;color:var(--mut)}
.gl h2{font-size:20px;margin:26px 0 10px;padding-bottom:6px;border-bottom:2px solid var(--ink)}
.gl dl{margin:0;display:grid;gap:0}
.gl .gi{display:grid;grid-template-columns:minmax(200px,.36fr) 1fr;gap:4px 18px;padding:12px 0;border-bottom:1px solid var(--line)}
.gl dt{margin:0;font-weight:800}
.gl dt small{display:block;font-weight:400;color:var(--mut);font-size:13px;margin-top:2px}
.gl dd{margin:0;color:var(--mut);font-size:15px;line-height:1.8}
.gl .gi[hidden],.gl section[hidden]{display:none}
.gnone{color:var(--mut)}
@media (max-width:640px){.gl .gi{grid-template-columns:1fr;gap:2px}}
/* cost guide */
.bench{width:100%;border-collapse:collapse;font-size:15px}
.bench th,.bench td{text-align:start;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.bench th{font-size:13px;color:var(--mut);font-weight:700}
.bench td b{white-space:nowrap}
.bench td small{display:block;color:var(--mut);font-size:12.5px}
.bench td a{color:var(--link)}
.calc.cost .cf{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
@media (max-width:520px){.calc.cost .cf{grid-template-columns:minmax(0,1fr)}}
.calc.cost .cr div{flex-wrap:wrap}
.calc.cost .cr div:last-child b{white-space:normal;font-size:14px;font-weight:600;text-align:end}
/* rate demo */
.calc.rate{max-width:none}
.calc.rate .cf{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:700px){.calc.rate .cf{grid-template-columns:repeat(2,minmax(0,1fr))}}
.calc select{overflow:hidden}
/* print */
@media print{
  .top,.util,.mbar,.share,.rels,.pnav,.contact,footer,.nl,.crumb,.cur,.pbg,.lb,.filters,.fmap-wrap,.sdel .go,.hcards,.more,.btn,.cta,.totop{display:none!important}
  body{color:#000;background:#fff;font-size:12pt}
  .phero,.hero{background:none!important;color:#000!important;padding:0}
  .phero h1{font-size:22pt;color:#000}
  .phero p{color:#333}
  .art,.prose{max-width:none;font-size:11.5pt;line-height:1.7}
  .cover img,.pgal img{max-height:60mm;width:auto;object-fit:contain}
  .awrap,.two,.pcase{display:block}
  .aside,.pfacts{page-break-inside:avoid}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:9pt;color:#555}
  .cover figcaption a::after{content:""}
  main::after{content:"arabcreators.co · +966 59 700 9855 · info@arabcreators.co";display:block;margin-top:14mm;font-size:9pt;color:#555;border-top:1px solid #999;padding-top:3mm}
}
/* v15: refinement: quieter accents, sharper edges, photographic hero */
:root{--c1:#2633FF;--c2:#1F7A55;--c3:#2633FF;--brass:#4CC4FF;--r:3px}
::selection{background:#052976;color:#fff}
.hero,section.xs{background-image:none}
.hero.hi .pbg::after{background:linear-gradient(180deg,rgba(3,18,56,.5) 0%,rgba(3,18,56,.15) 38%,rgba(3,18,56,.8) 100%),linear-gradient(-90deg,rgba(4,26,82,.97) 0%,rgba(4,26,82,.86) 42%,rgba(4,26,82,.42) 100%)}
[dir=ltr] .hero.hi .pbg::after{background:linear-gradient(180deg,rgba(3,18,56,.5) 0%,rgba(3,18,56,.15) 38%,rgba(3,18,56,.8) 100%),linear-gradient(90deg,rgba(4,26,82,.97) 0%,rgba(4,26,82,.86) 42%,rgba(4,26,82,.42) 100%)}
[data-theme=dark] .hero.hi .pbg::after{background:linear-gradient(180deg,rgba(6,12,30,.55),rgba(6,12,30,.9))}
.hero .wrap{padding-block:72px 84px}
.hero.hi .bridge{opacity:.5}
.hero .arms{font-weight:400;color:#fff}
.hero .arms i{color:var(--brass)}
.eyebrow.on{display:flex;align-items:center;gap:12px;letter-spacing:.2px}
.eyebrow.on::before{content:"";width:32px;height:1px;background:var(--brass);flex:none}
.stats{border-top:1px solid rgba(255,255,255,.08)}
.st b{font-size:34px}
.arm h3::before{width:16px;height:3px;border-radius:0}
.phero h1 .dot{width:18px;height:4px;border-radius:0}
.ticks.on li::before{background:var(--brass)}
.fmap .pin[aria-pressed=true] circle.dot{fill:var(--c3)}
.fmap .pin:focus-visible circle.dot{stroke:var(--c3)}
.fcity[aria-pressed=true] i{background:var(--c3)}
.btn,.chip,.lang,.theme,.menu,input,select,textarea{border-radius:var(--r)}
.chip{border-radius:var(--r)}
.hcard,.acard,.fc,.sec,.area,.deliv div,.calc,.dlf,.pfacts,.srl a,.pnav a,.fcity,.acta,form.wa,.sdel,.check,.empty,.org .node,.cover,.bu,.nsteps li,.calc .cr,.std dl,.fmap,.sub{border-radius:var(--r)}
.pj img,.pj picture,.rel picture,.rel img,.indfig img{border-radius:2px}
.sec:hover,.area:hover,.deliv div:hover{box-shadow:none}
.btn:hover{transform:none}
.hcard b{font-weight:800}
.hcard img{filter:saturate(.92)}
.hcard:hover img,.pj button:hover img{transform:scale(1.025)}
/* free services: editorial columns instead of a row of boxed buttons */
.fcards{gap:0 28px}
.fc{background:transparent;border:0;border-top:2px solid var(--ink);border-radius:0;padding:20px 0 8px}
.fc .btn{background:none;border:0;border-bottom:1px solid currentColor;border-radius:0;color:var(--link);padding:0 0 2px;font-weight:800;min-height:0}
.fc .btn::after{content:"←";font-weight:400}
[dir=ltr] .fc .btn::after{content:"→"}
.fc .btn:hover{background:none;color:var(--ink)}
/* rhythm */
@media (min-width:981px){section.s,div.s{padding-block:88px}.soft+.sectors{padding-top:88px}}
.head{margin-bottom:40px}
.head h2{letter-spacing:0}
.more{padding-bottom:2px}
/* footer bar aligned with the grid */
.fbar{border-top:0;position:relative}
.fbar::before{content:"";position:absolute;top:0;inset-inline:var(--gut);border-top:1px solid rgba(255,255,255,.1)}
@media (max-width:980px){.hero.hi .bridge{display:none}.hero .wrap{padding-block:48px 56px}.hero.hi .pbg::after{background:linear-gradient(180deg,rgba(4,26,82,.82),rgba(4,26,82,.92))}}
@media (max-width:1060px){.fcards{gap:0 22px}}
.hero .dl{display:inline-block;margin-top:22px}
.st b{flex-direction:column;align-items:flex-start;gap:2px}
.st b .num{white-space:nowrap}
.st b small{font-weight:400;letter-spacing:.02em}
@media (min-width:981px){.st{padding-inline:24px}.st b{font-size:clamp(26px,2.2vw,34px)}}

/* Try-us-free offer */
.ofr{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:16px}
.ofr.on{display:flex}
html.ofr-lock{overflow:hidden}
.ofr-bg{position:absolute;inset:0;background:rgba(5,41,118,.62);backdrop-filter:blur(3px)}
.ofr-card{position:relative;width:100%;max-width:440px;max-height:calc(100dvh - 32px);overflow:auto;background:var(--paper);color:var(--ink);border-radius:14px;padding:22px 20px 18px;box-shadow:0 24px 60px rgba(5,41,118,.35);animation:ofrIn .25s ease-out}
@keyframes ofrIn{from{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.ofr-card{animation:none}}
.ofr-x{position:absolute;inset-inline-end:10px;top:8px;width:36px;height:36px;border:0;background:transparent;color:var(--mut);font-size:26px;line-height:1;cursor:pointer;border-radius:50%}
.ofr-x:hover{background:var(--soft)}
.ofr-k{margin:0 0 4px;color:#2633FF;font-weight:800;font-size:13px;letter-spacing:.3px}
.ofr-card h2{margin:0 0 6px;margin-inline-end:30px;font-size:20px;line-height:1.35;color:var(--ink)}
.ofr-p{margin:0 0 10px;color:var(--mut);font-size:14px}
.ofr-l{margin:0 0 12px;padding:0;list-style:none;font-size:14px}
.ofr-l li{padding-inline-start:24px;position:relative;margin:4px 0}
.ofr-l li:before{content:"\2713";position:absolute;inset-inline-start:2px;top:0;color:#1DA370;font-weight:900}
.ofr-f label{display:block;font-size:13px;font-weight:700;margin:0 0 9px;color:var(--ink)}
.ofr-f input:not([type=radio]),.ofr-f select{display:block;width:100%;box-sizing:border-box;margin-top:4px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit;font-size:15px}
.ofr-o{border:0;margin:0 0 10px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ofr-o legend{grid-column:1/-1;font-size:13px;font-weight:700;margin-bottom:4px;padding:0}
.ofr-f .ofr-o label{display:flex;align-items:center;gap:8px;font-weight:700;font-size:13px;line-height:1.35;margin:0;padding:9px 10px;border:1px solid var(--line);border-radius:8px;cursor:pointer}.ofr-f .ofr-o input{width:auto;flex:0 0 auto;margin:0;accent-color:#052976}.ofr-f .ofr-o label:has(input:checked){border-color:#052976;background:var(--soft)}
.ofr-s,.ofr-ok .btn{width:100%;justify-content:center;background:#2633FF;color:#fff;border-color:#2633FF;margin-top:4px}
.ofr-s:disabled{opacity:.6}
.ofr-e{color:#C62828;font-size:13px;margin:0 0 6px}
.ofr-n{margin:8px 0 0;color:var(--mut);font-size:11.5px;text-align:center}
.ofr-okt{font-weight:700;margin:6px 0 12px}
[data-theme=dark] .ofr-s,[data-theme=dark] .ofr-ok .btn{background:#4CC4FF;color:#0B1F3A;border-color:#4CC4FF}

/* Floating WhatsApp button, desktop (mobile keeps the bottom bar) */
.wa-f{position:fixed;inset-inline-start:22px;bottom:22px;z-index:40;width:56px;height:56px;border-radius:50%;display:none;align-items:center;justify-content:center;background:#1FA855;color:#fff;box-shadow:0 10px 26px rgba(5,41,118,.28);transition:transform .2s}
.wa-f:hover{transform:translateY(-2px)}
.wa-f:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.wa-f svg{width:28px;height:28px}
@media (min-width:901px){.wa-f{display:inline-flex}}
@media print{.wa-f{display:none}}

/* Selected work: large real project photos, minimal text */
.sel{padding-block:64px 24px}
.sel-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:12px 24px;margin-bottom:22px}
.sel-head h2{margin:0}
.sel-head p{margin:6px 0 0;color:var(--mut)}
.sel-g{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:clamp(150px,19vw,250px);gap:10px}
.sel-i{position:relative;display:block;overflow:hidden;border-radius:6px;background:var(--soft);color:#fff;text-decoration:none}
.sel-i:first-child{grid-column:span 2;grid-row:span 2}
.sel-i picture,.sel-i img{display:block;width:100%;height:100%}
.sel-i img{object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.sel-i::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(4,16,46,.72),rgba(4,16,46,0) 55%);pointer-events:none}
.sel-t{position:absolute;inset-inline:16px;bottom:14px;z-index:1;font-weight:700;font-size:15px;line-height:1.4;text-wrap:balance}
.sel-i:first-child .sel-t{font-size:20px}
.sel-i:hover img,.sel-i:focus-visible img{transform:scale(1.04)}
.sel-i:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
@media (max-width:720px){.sel{padding-block:44px 12px}.sel-g{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:40vw;gap:8px}.sel-i:first-child{grid-row:span 1}.sel-i:last-child{grid-column:span 2}.sel-t{font-size:13px;inset-inline:10px;bottom:9px}.sel-i:first-child .sel-t{font-size:16px}}
@media (prefers-reduced-motion:reduce){.sel-i img{transition:none}}

/* Projects gallery: large photos, title on the image */
#pj-grid .grid.three{gap:10px}
#pj-grid .pj{position:relative;overflow:hidden;border-radius:6px;background:var(--soft)}
#pj-grid .pj button{display:block}
#pj-grid .pj img{aspect-ratio:4/3;border-radius:0;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
#pj-grid .pj:hover img{transform:scale(1.04)}
#pj-grid .pj figcaption{position:absolute;inset-inline:0;bottom:0;padding:44px 16px 14px;gap:3px;color:#fff;background:linear-gradient(to top,rgba(4,16,46,.82),rgba(4,16,46,0));pointer-events:none}
#pj-grid .pj figcaption a{pointer-events:auto;color:#fff}
#pj-grid .pj b{font-size:16px;line-height:1.4;text-wrap:balance}
#pj-grid .pj .tag{color:#4CC4FF}
#pj-grid .pj .meta{color:rgba(255,255,255,.78);font-size:13px}
#pj-grid .pjm{display:none!important}
@media (prefers-reduced-motion:reduce){#pj-grid .pj img{transition:none}}

:root[data-theme=dark] .fc .btn{background:none;border-color:currentColor}

:where(h1,h2,h3){color:var(--navy)}
:where(.top,.util,.nav,.hero,.phero,.stats,.contact,footer,.mbar,.bu.tot,section.xs,.fl,.hx,.opp-wa,dialog.lb,.sel-i) :where(h1,h2,h3){color:inherit}
:root[data-theme=dark] :where(h1,h2,h3){color:inherit}

.totop{display:none!important}
.pbg::after{background:linear-gradient(90deg,rgba(5,41,118,.93) 0%,rgba(5,41,118,.74) 45%,rgba(5,41,118,.30) 100%)}
[dir=rtl] .pbg::after{background:linear-gradient(-90deg,rgba(5,41,118,.93) 0%,rgba(5,41,118,.74) 45%,rgba(5,41,118,.30) 100%)}
@media (max-width:760px){.pbg::after,[dir=rtl] .pbg::after{background:linear-gradient(to top,rgba(5,41,118,.92) 0%,rgba(5,41,118,.78) 60%,rgba(5,41,118,.55) 100%)}}
.hx::before{background:linear-gradient(to top,rgba(4,16,46,.86) 0%,rgba(4,16,46,.40) 48%,rgba(4,16,46,.06) 100%)}
@media print{.pbg::after{display:none}}
.afig2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:6px 0 20px}
.afig{margin:0}
.afig img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;display:block;border-radius:6px;background:var(--soft)}
.afig figcaption{font-size:13px;line-height:1.6;color:var(--mut);margin-top:6px}
@media (max-width:520px){.afig2{grid-template-columns:1fr}}
.idst-p{max-width:46em;font-size:17px;line-height:1.9;margin:0 0 22px}
.idst-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-block:1px solid var(--line);margin:0 0 28px}
.idst-s{padding:18px 16px;border-inline-start:1px solid var(--line)}
.idst-s:first-child{border-inline-start:0}
.idst-s b{display:block;color:var(--navy);font-weight:800;margin-bottom:4px}
.idst-s span{color:var(--mut);font-size:15px;line-height:1.7}
.idst-g{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.idst-c{margin:0}
.idst-c img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block;border-radius:4px;background:var(--soft)}
.idst-a{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.idst-c h3{font-size:17px;font-weight:800;margin:14px 0 6px;color:var(--navy)}
.idst-c p{color:var(--mut);font-size:15px;line-height:1.75;margin:0 0 8px}
.idst-t{align-self:start;background:var(--card);border:1px solid var(--line);border-radius:6px;padding:20px}
.idst-ba{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:center}
.idst-ba-v{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.idst-ba-v figure{margin:0;position:relative}
.idst-ba-v img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;display:block;border-radius:6px;background:var(--soft)}
.idst-ba-v figure:last-child img{object-position:22% 50%}
.idst-ba-v figcaption{position:absolute;inset-inline-start:10px;bottom:10px;background:var(--navy);color:#fff;font-weight:800;font-size:14px;padding:4px 10px;border-radius:4px}
@media (max-width:900px){.idst-g{grid-template-columns:1fr}.idst-steps{grid-template-columns:1fr}.idst-s{border-inline-start:0;border-top:1px solid var(--line)}.idst-s:first-child{border-top:0}.idst-ba{grid-template-columns:1fr}}
.sar{display:inline-flex;align-items:center;vertical-align:-0.08em;line-height:1}
.sar svg{width:.82em;height:.92em;display:block}
.sar-t{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
footer nav{gap:2px}
footer nav a{min-height:28px;line-height:1.45}
footer nav h2{margin:0 0 8px}
.fgrid{padding-block:36px 22px}
@media (max-width:760px){footer nav a{min-height:32px}}

/* Phase 1 restructure (13 Oct 2026): header quote button, contact "additional details" disclosure, opportunities lead line. Tokens from site.css only. */
.nav a.ncta{display:inline-block;border:1px solid rgba(255,255,255,.4);border-radius:6px;padding:7px 14px;color:#fff;font-weight:800;white-space:nowrap}
.nav a.ncta:hover,.nav a.ncta[aria-current=page]{background:rgba(255,255,255,.1);border-color:#fff;color:#fff}
@media (max-width:980px){.nav a.ncta{display:block;margin-top:14px;padding:12px 16px;text-align:center}}
.s[hidden]{display:none}
details.more-d{border:1px solid var(--line);border-radius:8px;background:var(--card)}
details.more-d>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;font-weight:800;font-size:15px;color:var(--navy)}
details.more-d>summary::-webkit-details-marker{display:none}
details.more-d>summary::after{content:"";flex:none;width:8px;height:8px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg);transition:transform .15s}
details.more-d[open]>summary::after{transform:translateY(2px) rotate(225deg)}
details.more-d>summary:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
details.more-d>summary .sm{display:block;font-weight:400;font-size:13px;color:var(--mut)}
details.more-d .more-b{display:grid;gap:14px;padding:16px;border-top:1px solid var(--line)}
.opp-lead{max-width:46em;margin:0;font-size:17px;line-height:1.8}
@media (min-width:981px){.top .brand{flex:none}html:not([lang=ar]) .nav{gap:14px;font-size:14px}html:not([lang=ar]) .nav a.ncta{padding:7px 12px}}
@media (min-width:981px) and (max-width:1340px){html:not([lang=ar]) .acts .btn{display:none}}

/* Phase 2 restructure (13 Oct 2026): service price strip, home price cards, templates block, calculator CTA, related-service box. Tokens from site.css only. */

/* ---- price strip, directly under the service hero ---- */
.pstrip{background:var(--card);border-bottom:1px solid var(--line)}
.pstrip-in{display:flex;flex-wrap:wrap;align-items:center;gap:16px 36px;padding-block:20px}
.pst-n{margin:0;display:grid;gap:2px;flex:1 1 230px;min-width:0}
.pst-n b{font-weight:800;font-size:var(--fs-h3);line-height:1.4;color:var(--navy)}
.pst-n span{font-size:var(--fs-xs);color:var(--mut)}
.pst-c{display:grid;gap:2px}
.pst-k{font-size:var(--fs-xs);font-weight:700;color:var(--mut)}
.pst-v{font-size:var(--fs-sm);color:var(--ink)}
.pst-v b{font-weight:800;font-size:28px;line-height:1.2;color:var(--navy);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate;display:inline-block}
.pst-v.pst-scope{font-weight:800;font-size:var(--fs-h3);color:var(--navy)}
.pst-a{display:flex;flex-wrap:wrap;gap:10px;margin-inline-start:auto}
@media (max-width:760px){
  .pstrip-in{gap:14px 24px;padding-block:18px}
  .pst-n{flex-basis:100%}
  .pst-a{margin-inline-start:0;flex-basis:100%}
  .pst-a .btn{flex:1 1 150px;justify-content:center}
}

/* ---- home: hero services line ---- */
.hx-p{margin:0;max-width:40em;color:var(--onnavy);font-size:17px;line-height:1.8}
.hx-svc{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 28px}
.hx-svc a{color:#fff;font-weight:800;font-size:var(--fs-sm);text-decoration:none;border-bottom:1px solid var(--sky);padding-bottom:2px}
.hx-svc a:hover{border-bottom-color:#fff}

/* ---- home: service cards with prices ---- */
.pcs{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 28px}
.pc .pc-p{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;color:var(--ink);font-size:var(--fs-sm)}
.pc .pc-p small{flex:0 0 100%;font-size:var(--fs-xs);font-weight:700;color:var(--mut)}
.pc .pc-p strong{font-weight:800;font-size:30px;line-height:1.2;color:var(--navy);font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}
.pc .pc-m{font-size:var(--fs-xs);color:var(--mut)}
.pc-foot{margin:28px 0 0;display:flex;flex-wrap:wrap;gap:10px 28px;font-size:var(--fs-sm)}
@media (max-width:980px){.pcs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.pcs{grid-template-columns:minmax(0,1fr)}}

/* ---- home: calculator call to action ---- */
.calc-cta .wrap{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px 48px;align-items:center}
.calc-cta h2{font-weight:800;font-size:var(--fs-h2);line-height:1.2;margin:0 0 12px}
.calc-cta p{margin:0;color:var(--mut);max-width:36em}
.calc-cta .cc-a{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
@media (max-width:860px){.calc-cta .wrap{grid-template-columns:minmax(0,1fr)}}

/* ---- home: templates block ---- */
.tpls{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:980px){.tpls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.tpls{grid-template-columns:minmax(0,1fr)}}
.tpls .fc .tpl-img{margin-bottom:8px}
.tpl-foot{margin:28px 0 0;display:flex;flex-wrap:wrap;gap:10px 28px;font-size:var(--fs-sm)}

/* ---- article: related service box ---- */
.rsv{display:grid;gap:4px;border-top:1px solid var(--line);padding-top:14px;margin-top:2px}
.rsv-k{font-size:var(--fs-xs);font-weight:700;color:var(--mut)}
.rsv-n{font-weight:800;font-size:var(--fs-h3);line-height:1.4;color:var(--act);text-decoration:none;border-bottom:1px solid currentColor;justify-self:start}
.rsv-n:hover{color:var(--ink)}
.rsv-p{font-size:var(--fs-sm);color:var(--ink)}

/* Author: Ahmed Fathy. Light motion; every rule needs html.mo, which only motion.js sets (never with reduced motion). Opacity and transform only: no layout shift. */
@media (prefers-reduced-motion:no-preference){
html.mo .mo-r{opacity:0;transform:translateY(18px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1);transition-delay:var(--mo-d,0ms)}
html.mo .mo-r.mo-in{opacity:1;transform:none}
html.mo .rv.mo-f{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
html.mo .rv.mo-f.in{opacity:1}
html.mo .phero h1,html.mo .hero h1{animation:mo-h .8s cubic-bezier(.2,.7,.2,1) .05s both}
html.mo .phero h1+p,html.mo .hero h1+p{animation:mo-p .7s cubic-bezier(.2,.7,.2,1) .25s both}
html.mo .stats .num{display:inline-block;font-variant-numeric:tabular-nums}
}
@keyframes mo-h{from{clip-path:inset(0 0 100% 0);transform:translateY(.4em)}to{clip-path:inset(-.2em -.2em -.3em -.2em);transform:none}}
@keyframes mo-p{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){html.mo .mo-r,html.mo .rv.mo-f{opacity:1!important;transform:none!important;transition:none!important}html.mo .phero h1,html.mo .hero h1,html.mo .phero h1+p,html.mo .hero h1+p{animation:none!important}}
@media print{.mo-r,.rv.mo-f{opacity:1!important;transform:none!important}}

.tb{background:var(--navy);color:#fff;padding-block:44px}
.tb .wrap{display:grid;gap:28px}
.tb-h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px}
.tb-e{margin:0 0 6px;font-size:13px;font-weight:700;color:var(--sky);letter-spacing:.3px}
.tb-h h2{margin:0;color:#fff;font-size:clamp(20px,2.4vw,28px);line-height:1.35}
.tb-h a{color:var(--onnavy);font-weight:700;text-decoration:underline;text-underline-offset:4px}
.tb-s{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-block:1px solid rgba(227,234,248,.22)}
.tb-s div{padding:22px 18px;border-inline-start:1px solid rgba(227,234,248,.22)}
.tb-s div:first-child{border-inline-start:0}
.tb-n{display:block;font-size:clamp(30px,4vw,46px);font-weight:800;line-height:1;color:#fff;font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}
[dir=rtl] .tb-n{text-align:right}
.tb-u{display:block;margin-top:6px;font-weight:700;color:var(--sky);font-size:15px}
.tb-l{display:block;margin-top:6px;color:var(--onnavy);font-size:14px;line-height:1.6}
.tb-p{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:0;padding:0;list-style:none}
.tb-p li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.6;color:#fff}
.tb-p svg{flex:0 0 20px;width:20px;height:20px;margin-top:3px;color:var(--sky)}
.tb-c{margin:0;font-size:13px;color:var(--onnavy);line-height:1.8}
@media (max-width:900px){.tb-s,.tb-p{grid-template-columns:repeat(2,1fr)}.tb-s div:nth-child(3){border-inline-start:0}.tb-s div:nth-child(n+3){border-top:1px solid rgba(227,234,248,.22)}}
@media (max-width:520px){.tb{padding-block:34px}.tb-s div{padding:16px 12px}.tb-p{grid-template-columns:1fr}}
@media print{.tb{background:none;color:#000}}

/* Home page only (/ and /en/): hero video, audiences, flagship shop drawings & QTO, client portal.
   Loaded after site.css. Logical properties throughout so RTL and LTR share one set of rules. */
:root{--cyan:#4CC4FF;--blue:#2633FF;--rule-on:rgba(255,255,255,.14);--rule-on2:rgba(255,255,255,.24)}

/* ---------- kicker with brass rule (light backgrounds) ---------- */
.eyebrow.rule{display:flex;align-items:center;gap:12px;letter-spacing:.2px;margin:0 0 12px}
.eyebrow.rule::before{content:"";width:32px;height:1px;background:var(--brass);flex:none}

/* ---------- hero ---------- */
.hero.hh .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,4.4vw,64px);padding-block:clamp(52px,6vw,84px)}
.hero.hh h1{font-size:clamp(34px,3.7vw,52px);line-height:1.15}
.ltr .hero.hh h1{font-size:clamp(32px,3.1vw,44px)}
.hero.hh .arms{margin:14px 0 10px;font-size:clamp(18px,1.55vw,22px)}
.hero.hh p.lead{max-width:31em;margin-bottom:28px}
.hvf{margin:0;min-width:0}
.hvbox{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:8px;background:#0A1C4F;border:1px solid rgba(255,255,255,.2);box-shadow:0 32px 64px -34px rgba(0,5,22,.8)}
.hv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.hvbox.nopo{background:#fff url(/img/samples/villa/portfolio-sd-ar-101-1200.webp) center/cover no-repeat}
.hvbtn{position:absolute;inset-block-end:12px;inset-inline-end:12px;z-index:1;width:44px;height:44px;display:grid;place-items:center;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(3,18,56,.76);color:#fff;cursor:pointer;transition:background .2s,border-color .2s}
.hvbtn:hover{background:rgba(3,18,56,.94);border-color:#fff}
.hvbtn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.hvbtn svg{width:16px;height:16px;display:block}
.hvbtn .ipl,.hvbox.paused .hvbtn .ipa{display:none}
.hvbox.paused .hvbtn .ipl{display:block}
.hvf figcaption{display:flex;align-items:baseline;gap:10px;margin-top:14px;font-size:var(--fs-xs);color:var(--onnavy2);line-height:1.6}
.hvf figcaption::before{content:"";width:24px;height:1px;background:var(--brass);flex:none;align-self:center}

/* ---------- audiences ---------- */
.audg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.aud-c{display:flex;flex-direction:column;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px 26px 24px;transition:border-color .2s,box-shadow .2s}
.aud-c:hover{border-color:var(--link);box-shadow:0 16px 36px -22px rgba(5,41,118,.45)}
.aud-i{width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--r);color:var(--link);margin-bottom:20px}
.aud-i svg{width:24px;height:24px;display:block}
.aud-k{display:flex;align-items:center;gap:10px;margin:0 0 8px;font-size:var(--fs-xs);font-weight:700;color:var(--mut)}
.aud-k::before{content:"";width:18px;height:2px;background:var(--brass);flex:none}
.aud-c h3{font-weight:800;font-size:var(--fs-h3-lg);line-height:1.4;margin:0 0 14px}
.aud-c .ticks{margin:0 0 24px}
.aud-c .ticks li{margin:8px 0;line-height:1.65}
.aud-c .ticks li::before{background:var(--brass)}
.aud-a{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;padding-top:20px;border-top:1px solid var(--line)}
.aud-a .more{font-size:var(--fs-sm)}

/* ---------- flagship: shop drawings & QTO ---------- */
section.fl{background:var(--navy2);color:#fff}
.fl-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px 48px;align-items:end;margin-bottom:40px}
.fl-top h2{font-weight:800;font-size:var(--fs-h2);line-height:1.2;margin:12px 0 0}
.fl-top .fl-lead{color:var(--onnavy);margin:14px 0 0;max-width:38em;font-size:17px}
.fl-sub{display:flex;align-items:center;gap:10px;margin:0 0 16px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.3px;color:var(--onnavy2)}
.fl-sub::before{content:"";width:24px;height:1px;background:var(--brass);flex:none}
.fl-sub small{font-size:inherit;font-weight:400;color:var(--onnavy2)}
.fl-sub small::before{content:"·";margin-inline-end:10px}

/* sample sheet strip */
.shts{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.shts li{min-width:0}
.shts a{display:block;text-decoration:none;color:#fff}
.shts .pp{display:block;overflow:hidden;background:#fff;border-radius:3px;box-shadow:0 0 0 1px rgba(255,255,255,.18),0 20px 36px -22px rgba(0,0,0,.7);transition:transform .35s ease,box-shadow .35s ease}
.shts img{display:block;width:100%;height:auto;aspect-ratio:1200/848}
.shts a:hover .pp{transform:translateY(-3px);box-shadow:0 0 0 1px rgba(255,255,255,.4),0 26px 40px -22px rgba(0,0,0,.75)}
.shts .cp{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin-top:12px;font-size:14px}
.shts .cp b{font-weight:700;font-size:12.5px;letter-spacing:.8px;color:var(--cyan)}
.shts .cp span{color:var(--onnavy)}
.shts a:hover .cp span{color:#fff;text-decoration:underline;text-underline-offset:3px}
.fl-more{margin:18px 0 0;font-size:var(--fs-sm)}

/* disciplines + deliverables */
.fl-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px 48px;margin-top:64px;align-items:start}
.disc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--rule-on2)}
.disc li{display:grid;grid-template-columns:auto minmax(0,1fr);align-content:start;gap:4px 14px;padding:18px 0 20px;border-bottom:1px solid var(--rule-on)}
.disc li:nth-child(odd){padding-inline-end:22px;border-inline-end:1px solid var(--rule-on)}
.disc li:nth-child(even){padding-inline-start:22px}
.disc .dc{grid-row:span 2;align-self:start;min-width:38px;padding:3px 6px;border:1px solid rgba(76,196,255,.5);border-radius:2px;font-size:11.5px;font-weight:800;letter-spacing:1px;line-height:1.5;text-align:center;color:var(--cyan);direction:ltr}
.disc b{font-weight:800;font-size:18px;line-height:1.4}
.disc span:not(.dc){color:var(--onnavy);font-size:14.5px;line-height:1.65}
.rcv{background:rgba(255,255,255,.035);border:1px solid var(--rule-on);border-radius:var(--r);padding:24px 24px 10px}
.rcv .fl-sub{margin-bottom:6px}
.rcv ul{list-style:none;margin:0;padding:0}
.rcv li{display:grid;grid-template-columns:92px minmax(0,1fr);gap:3px 16px;padding:16px 0;border-top:1px solid var(--rule-on)}
.rcv li:first-child{border-top:0}
.rcv .fmt{grid-row:span 2;align-self:start;justify-self:start;padding:4px 7px;border:1px solid rgba(76,196,255,.5);border-radius:2px;font-size:11.5px;font-weight:800;letter-spacing:.6px;line-height:1.5;color:var(--cyan);direction:ltr;white-space:nowrap}
.rcv b{font-weight:800;font-size:16.5px;line-height:1.45}
.rcv li span:not(.fmt){color:var(--onnavy);font-size:14.5px;line-height:1.65}

/* process */
.fl-steps{margin-top:64px}
.flow4{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.flow4 li{position:relative;display:grid;align-content:start;gap:6px;padding-block:28px 0;padding-inline-end:28px;border-top:1px solid var(--rule-on2)}
.flow4 li::before{content:"";position:absolute;top:-5px;inset-inline-start:0;width:9px;height:9px;border-radius:50%;background:var(--brass);box-shadow:0 0 0 4px var(--navy2)}
.flow4 .n{font-weight:800;font-size:13px;letter-spacing:1px;color:var(--brass);direction:ltr;unicode-bidi:isolate;justify-self:start}
.flow4 b{font-weight:800;font-size:18px;line-height:1.4}
.flow4 span:not(.n){color:var(--onnavy);font-size:14.5px;line-height:1.7}
.fl-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px 28px;margin-top:52px;padding-top:28px;border-top:1px solid var(--rule-on)}
.fl-cta p{margin:0;color:var(--onnavy2);font-size:var(--fs-sm)}

/* ---------- client portal teaser ---------- */
.pt-w{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px 64px;align-items:center}
.pt h2{font-weight:800;font-size:var(--fs-h2);line-height:1.2;margin:0 0 14px}
.pt-w>div>p:not(.eyebrow){color:var(--mut);margin:0 0 26px;max-width:30em}
.ptf{list-style:none;margin:0;padding:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r)}
.ptf li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:2px 18px;padding:22px 24px;border-top:1px solid var(--line)}
.ptf li:first-child{border-top:0}
.ptf .pi{grid-row:span 2;width:44px;height:44px;display:grid;place-items:center;border-radius:var(--r);background:var(--soft);color:var(--link)}
.ptf .pi svg{width:22px;height:22px;display:block}
.ptf b{font-weight:800;font-size:var(--fs-h3);line-height:1.4}
.ptf li span:not(.pi){color:var(--mut);font-size:var(--fs-sm);line-height:1.65}

/* ---------- reveal on scroll (only after home.js opts in; never with reduced motion) ---------- */
.hjs .hr{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.hjs .hr.in{opacity:1;transform:none}
.hjs .hr.d1{transition-delay:.07s}
.hjs .hr.d2{transition-delay:.14s}
.hjs .hr.d3{transition-delay:.21s}
.hjs .hr.d4{transition-delay:.28s}
.hjs .hr.d5{transition-delay:.35s}

/* ---------- dark theme ---------- */
:root[data-theme=dark] .aud-c:hover{box-shadow:none}
:root[data-theme=dark] .ptf .pi{background:var(--paper)}

/* ---------- responsive ---------- */
@media (max-width:1100px){
  .fl-grid{grid-template-columns:minmax(0,1fr);gap:40px}
}
@media (min-width:701px) and (max-width:1100px){
  .rcv ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px}
  .rcv li:nth-child(2){border-top:0}
}
@media (max-width:980px){
  .hero.hh .wrap{grid-template-columns:minmax(0,1fr);gap:36px}
  .audg{grid-template-columns:minmax(0,1fr);gap:16px}
  .aud-c{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:20px;padding:24px 22px 20px}
  .aud-i{grid-row:1/span 4;margin-bottom:0}
  .aud-a{grid-column:2}
  .fl-top{grid-template-columns:minmax(0,1fr);align-items:start}
  .flow4{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:36px}
  .pt-w{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:700px){
  .shts{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px}
  .disc{grid-template-columns:minmax(0,1fr)}
  .disc li:nth-child(odd){padding-inline-end:0;border-inline-end:0}
  .disc li:nth-child(even){padding-inline-start:0}
}
@media (max-width:440px){
  .hero.hh h1 .nw{white-space:normal}
}
@media (max-width:600px){
  .aud-c{display:flex;padding:22px 20px 20px}
  .aud-i{margin-bottom:16px}
  .aud-c h3{font-size:var(--fs-h3)}
  .flow4{grid-template-columns:minmax(0,1fr);row-gap:0;margin-inline-start:4px}
  .flow4 li{border-top:0;border-inline-start:1px solid var(--rule-on2);padding-block:0 26px;padding-inline:24px 0}
  .flow4 li:last-child{padding-block-end:4px}
  .flow4 li::before{top:3px;inset-inline-start:-5px}
  .rcv{padding:20px 18px 6px}
  .rcv li{grid-template-columns:minmax(0,1fr)}
  .rcv .fmt{grid-row:auto;margin-bottom:4px}
  .ptf li{padding:18px 18px;gap:2px 14px}
  .fl-cta .cta .btn{flex:1 1 100%;justify-content:center}
}

@media (prefers-reduced-motion:reduce){
  .hjs .hr{opacity:1;transform:none;transition:none}
  .shts .pp,.aud-c,.hvbtn{transition:none}
  .shts a:hover .pp{transform:none}
}
@media print{
  .hvf,.fl-cta,.aud-a,.shts{display:none!important}
  section.fl{background:#fff!important;color:#000!important}
  section.fl *{color:#000!important}
  .hjs .hr{opacity:1!important;transform:none!important}
}

/* Full-bleed photo hero */
.hx{position:relative;isolation:isolate;min-height:clamp(440px,74vh,720px);display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:#0B1F3A}
.hx-bg{position:absolute;inset:0;z-index:-2}
.hx-bg img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.hx::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgba(4,16,46,.88) 0%,rgba(4,16,46,.45) 45%,rgba(4,16,46,.15) 100%)}
.hx-in{width:100%;padding-block:clamp(48px,8vh,96px);display:grid;gap:18px;justify-items:start}
.hx-k{margin:0;font-size:clamp(13px,1.1vw,15px);letter-spacing:.04em;color:#E3EAF8}
.hx h1{margin:0;color:#fff;font-size:clamp(38px,5.4vw,76px);line-height:1.08;max-width:14ch;text-wrap:balance}
.hx-cta{display:flex;flex-wrap:wrap;gap:12px}
.hx .btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.7)}
.hx .btn.ghost:hover{background:rgba(255,255,255,.12)}
.hx-cap{font-size:13px;color:rgba(255,255,255,.75);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
.hx-cap:hover{color:#fff}
@media (max-width:720px){.hx{min-height:clamp(420px,78vh,620px)}.hx h1{max-width:none}}
.hh .hx-h2{margin:0;font-size:clamp(28px,2.7vw,40px);line-height:1.18}

.hx h1 .hx-b{display:block;margin:0 0 12px;font-size:clamp(16px,1.7vw,22px);font-weight:700;line-height:1.5;letter-spacing:0;color:#E3EAF8}

.fl-top .fl-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.fl-links .more.on{display:inline-flex;align-items:center;min-height:44px;max-width:100%;padding:8px 12px;border:1px solid rgba(255,255,255,.4);border-radius:6px;line-height:1.5;font-size:15px;white-space:normal;text-decoration:none}.fl-links .more.on:hover,.fl-links .more.on:focus-visible{border-color:#fff;text-decoration:underline}

.qc{display:grid;grid-template-columns:1.4fr 1fr;gap:28px;align-items:start}
.qc-row{display:grid;grid-template-columns:1fr 110px 120px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.qc-row label{display:flex;flex-direction:column}.qc-row label span{color:var(--mut);font-size:var(--fs-xs)}
.qc-row input{width:100%;padding:8px 10px;border:1px solid var(--field);border-radius:4px;font:inherit;background:var(--card);color:var(--ink)}
.qc-row em{font-style:normal;color:var(--mut);font-size:var(--fs-xs)}
.qc-side{position:sticky;top:90px;background:var(--soft);border-top:4px solid var(--c1);padding:18px;border-radius:4px}
.qc-side select{width:100%;padding:8px;margin:6px 0 14px;border:1px solid var(--field);border-radius:4px;font:inherit;background:var(--card);color:var(--ink)}
.qc-t{width:100%;border-collapse:collapse;margin-bottom:14px}.qc-t td{padding:7px 0;border-bottom:1px solid var(--line);vertical-align:top}
.qc-t td:last-child{text-align:end;white-space:nowrap;font-variant-numeric:tabular-nums}.qc-t small{display:block;color:var(--mut)}
.qc-s td{font-weight:600}.qc-g td{font-weight:700;font-size:1.15em;color:var(--navy);border-bottom:0}
.qc-empty{color:var(--mut)}
@media(max-width:860px){.qc{grid-template-columns:1fr}.qc-side{position:static}.qc-row{grid-template-columns:1fr 90px}.qc-row em{grid-column:1/-1}}
.tpl-img{width:100%;height:auto;border-radius:6px;margin-bottom:10px;display:block}
.tpl-bundle{width:100%;max-width:720px;height:auto;border-radius:8px;margin:8px 0 12px;display:block}

.sw{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(168px,100%),1fr));gap:10px;margin-top:20px;flex:1 1 100%;width:100%;min-width:0;max-width:900px;margin-inline:auto;grid-column:1/-1;box-sizing:border-box}
.sw-c{min-width:0;display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(255,255,255,.06);direction:ltr;text-align:left;transition:background .2s,border-color .2s}.sw-c:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.28)}.sw-c picture,.sw-c img{flex:0 0 40px;width:40px;height:40px;display:block}.sw-t{display:flex;flex-direction:column;min-width:0;overflow-wrap:anywhere}
.sw-c b{color:#fff;font-size:14px;letter-spacing:.2px;line-height:1.25}.sw-c i{font-style:normal;color:#C9D6F2;font-size:11.5px;line-height:1.3}
.sw-note{grid-column:1/-1;display:block;text-align:center;color:rgba(201,214,242,.7);font-size:11px;margin-top:4px}

.qcl{margin-top:16px;padding:16px;border:1px solid rgba(38,51,255,.35);border-radius:8px;background:rgba(38,51,255,.06);display:grid;gap:10px}
.qcl h3{margin:0;font-size:17px}.qcl p{margin:0}.qcl label{display:grid;gap:4px;font-weight:600;font-size:14px}
.qcl input{width:100%;padding:10px 12px;border:1px solid rgba(0,0,0,.18);border-radius:6px;font:inherit;background:transparent;color:inherit}
.qcl .btn{justify-self:start}.qcl .msg{font-weight:600;color:#2633FF}.qcl-note{opacity:.8}

.ptab-w{overflow-x:auto;margin:14px 0 18px}
.ptab{width:100%;border-collapse:collapse;font-size:15px}
.ptab th,.ptab td{padding:9px 10px;border-bottom:1px solid rgba(38,51,255,.22);text-align:start;vertical-align:top}
.ptab thead th{background:#052976;color:#fff;font-weight:700;white-space:nowrap}
.ptab tbody tr:nth-child(even){background:rgba(38,51,255,.05)}

.pk{margin:0 0 30px;padding:0 0 26px;border-bottom:1px solid rgba(38,51,255,.18)}
.pk h2{margin:0 0 6px}.pk>p{margin:0 0 14px}
.pk-g{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.pk-t{display:grid;gap:6px;align-content:start;padding:16px;border:1px solid rgba(38,51,255,.3);border-radius:8px;background:rgba(38,51,255,.05)}
.pk-t:nth-child(2){border-color:#2633FF;box-shadow:0 0 0 1px #2633FF inset}
.pk-n{font-size:13px;font-weight:700;color:#2633FF}.pk-t b{font-size:17px}
.pk-p{font-size:28px;font-weight:800;color:#052976;line-height:1.1}.pk-c{font-size:12px;opacity:.75}
.pk-t .btn{justify-self:start;margin-top:6px}.pk-r{margin-top:10px;opacity:.8}
[data-theme="dark"] .pk-p{color:#4CC4FF}
@media (max-width:520px){.sw{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.sw-c{padding:9px 10px;gap:9px}.sw-c picture,.sw-c img{flex-basis:34px;width:34px;height:34px}.sw-c b{font-size:13px}}

[data-theme="dark"] .pk-n,[data-theme="dark"] .qcl .msg{color:#4CC4FF}

/* Project enquiry assistant. Uses the site palette variables, so palette changes in site.css apply here too. Author: Ahmed Fathy */
.rcp{--r-navy:var(--navy,#052976);--r-ink:var(--ink,#0B1F3A);--r-mut:var(--mut,#5B6475);--r-line:var(--line,#D9DEE8);--r-paper:var(--paper,#FAFAF7);--r-card:var(--card,#FFFFFF);--r-ind:var(--indigo,#2633FF);--r-sky:var(--sky,#4CC4FF);--r-focus:var(--focus,#2633FF);font-family:'Almarai',Tahoma,Arial,sans-serif}
.rcp-l{position:fixed;inset-inline-end:18px;bottom:76px;z-index:36;display:inline-flex;align-items:center;gap:10px;height:48px;padding:0 18px;border:0;border-radius:4px;background:var(--r-ind);color:#fff;font:700 15px/1 'Almarai',Tahoma,Arial,sans-serif;cursor:pointer;box-shadow:0 8px 22px rgba(11,31,58,.22)}
.rcp-l:hover{background:var(--indigo2,#1E29CC)}
.rcp-l:focus-visible,.rcp button:focus-visible,.rcp a:focus-visible,.rcp input:focus-visible{outline:3px solid var(--r-sky);outline-offset:2px}
.rcp.on .rcp-l{display:none}
.rcp-p{position:fixed;inset-inline-end:18px;bottom:18px;z-index:1001;width:380px;max-width:calc(100vw - 36px);height:min(620px,calc(100vh - 36px));display:flex;flex-direction:column;background:var(--r-card);color:var(--r-ink);border:1px solid var(--r-line);border-radius:6px;box-shadow:0 18px 50px rgba(11,31,58,.28);overflow:hidden}
.rcp-p[hidden]{display:none}
.rcp-h{display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--r-navy);color:#fff}
.rcp-ht{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.35}
.rcp-ht strong{font-size:16px}
.rcp-ht span{font-size:12.5px;color:var(--r-sky)}
.rcp-tg{border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;border-radius:3px;padding:6px 10px;font:700 13px/1 'Almarai',Tahoma,Arial,sans-serif;cursor:pointer}
.rcp-x{border:0;background:transparent;color:#fff;font-size:26px;line-height:1;width:34px;height:34px;cursor:pointer}
.rcp-pg{height:3px;background:var(--r-line)}
.rcp-pg i{display:block;height:100%;background:var(--r-sky);transition:width .25s}
.rcp-b{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--r-paper)}
.rcp-m{max-width:86%;padding:10px 13px;border-radius:4px;font-size:14.5px;line-height:1.65;white-space:pre-line}
.rcp-bot{align-self:flex-start;background:var(--r-card);border:1px solid var(--r-line)}
.rcp-me{align-self:flex-end;background:var(--r-navy);color:#fff}
.rcp-note{align-self:flex-start;font-size:12.5px;color:var(--r-mut);margin-top:-2px}
.rcp-sum{margin:2px 0 0;padding:12px 14px;background:var(--r-card);border:1px solid var(--r-line);border-inline-start:4px solid var(--r-ind);border-radius:4px;display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:14px}
.rcp-sum dt{color:var(--r-ind);font-weight:700}
.rcp-sum dd{margin:0}
[dir=rtl] .rcp-sum dd[dir=ltr]{text-align:right}
.rcp-f{padding:12px 16px 6px;border-top:1px solid var(--r-line);background:var(--r-card)}
.rcp-ch{display:flex;flex-wrap:wrap;gap:7px}
.rcp-c{border:1.5px solid var(--r-ind);background:transparent;color:var(--r-ink);border-radius:3px;padding:8px 11px;font:700 13.5px/1.3 'Almarai',Tahoma,Arial,sans-serif;cursor:pointer;text-align:start}
.rcp-c:hover{background:var(--r-ind);color:#fff}
.rcp-co{border-style:dashed}
.rcp-in{display:flex;gap:8px}
.rcp-in input{flex:1;min-width:0;height:44px;padding:0 12px;border:1.5px solid var(--field,#8A93A6);border-radius:3px;background:var(--r-paper);color:var(--r-ink);font:400 16px 'Almarai',Tahoma,Arial,sans-serif}
.rcp-go,.rcp-pri{height:44px;padding:0 16px;border:0;border-radius:3px;background:var(--r-navy);color:#fff;font:700 14px 'Almarai',Tahoma,Arial,sans-serif;cursor:pointer}
.rcp-err{color:#B42318;font-size:13px;min-height:0;margin-top:6px}
.rcp-err:empty{display:none}
.rcp-acts{display:flex;flex-direction:column;gap:8px}
.rcp-pri{width:100%}
.rcp-pri[disabled]{opacity:.7;cursor:default}
.rcp-was{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rcp-wa{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 8px;text-align:center;border-radius:3px;background:#1FA855;color:#fff;font-weight:700;font-size:14px;text-decoration:none}
.rcp-nav{display:flex;gap:16px;margin-top:8px}
.rcp-lk{border:0;background:none;padding:2px 0;color:var(--r-mut);font:400 13px 'Almarai',Tahoma,Arial,sans-serif;text-decoration:underline;cursor:pointer}
.rcp-pv{margin:0;padding:6px 16px 10px;font-size:11.5px;line-height:1.5;color:var(--r-mut);background:var(--r-card)}
.rcp-pv a{color:inherit}
[data-theme=dark] .rcp .rcp-me{background:var(--r-ind)}
[data-theme=dark] .rcp .rcp-h{background:#0B1440}
@media (max-width:980px){
  .rcp-l{bottom:calc(120px + env(safe-area-inset-bottom,0px));inset-inline-end:14px;width:52px;height:52px;padding:0;justify-content:center;border-radius:50%}
  .rcp-lt{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .rcp-p{inset-inline:0;bottom:0;width:100%;max-width:none;height:min(86vh,640px);border-radius:10px 10px 0 0;padding-bottom:env(safe-area-inset-bottom,0px)}
}
@media print{.rcp{display:none!important}}
@media (prefers-reduced-motion:reduce){.rcp-pg i{transition:none}}

/* WhatsApp number chooser and SA / EG labels on paired icons. Author: Ahmed Fathy */
.wa-pick{position:fixed;z-index:60;width:244px;max-width:calc(100vw - 16px);background:#fff;color:#0B1F3A;border:1px solid #D9D6CE;border-radius:6px;box-shadow:0 10px 30px rgba(5,41,118,.22);padding:8px;font-family:'Almarai',Tahoma,Arial,sans-serif}
.wa-pick-h{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;font-weight:700;color:#052976;padding:2px 4px 8px}
.wa-pick-x{border:0;background:transparent;color:#052976;font-size:20px;line-height:1;cursor:pointer;padding:0 4px}
.wa-pick-o{display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:6px;padding:9px 10px;border-radius:4px;background:#127A3E;color:#fff;text-decoration:none;text-align:center}
.wa-pick-o:hover,.wa-pick-o:focus-visible{background:#178A45;color:#fff}
.wa-pick-o b{font-size:14px}
.wa-pick-o span{font-size:12.5px;opacity:.92}
.soc a{position:relative}
.soc .wa-cc{position:absolute;inset-inline-end:-6px;bottom:-5px;min-width:18px;padding:1px 3px;border-radius:7px;background:#127A3E;color:#fff;font:700 9px/1.25 Arial,sans-serif;letter-spacing:.02em;text-align:center;pointer-events:none}
@media print{.wa-pick{display:none!important}}

.scx{display:grid;grid-template-columns:minmax(0,240px) 1fr;gap:0;align-items:stretch;margin:0 0 28px;background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden;color:var(--ink);text-decoration:none;max-width:760px}
.scx:hover,.scx:focus-visible{border-color:var(--act)}
.scx:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.scx img{display:block;width:100%;height:100%;min-height:150px;object-fit:cover;border-radius:0}
.scx-b{display:flex;flex-direction:column;gap:6px;padding:18px 20px}
.scx-e{font-weight:700;font-size:13px;color:var(--mut);margin:0}
.scx-t{font-weight:800;font-size:19px;line-height:1.45;color:var(--navy);margin:0}
[data-theme=dark] .scx-t{color:var(--ink)}
.scx-d{font-size:15px;line-height:1.7;color:var(--mut);margin:0}
.scx-c{margin-top:auto;font-weight:700;font-size:15px;color:var(--act);align-self:flex-start;border-bottom:1px solid currentColor}
.grid+.scx{margin:28px 0 0}
@media (max-width:560px){.scx{grid-template-columns:1fr}.scx img{height:auto;aspect-ratio:16/9;min-height:0}}

/* Author: Ahmed Fathy. 19 Oct 2026 UI fixes from Ahmed's screenshot (header, contact strip, footer, floating button). Loaded last. */
/* header buttons never squeeze their label */
header .btn,.acts .btn{white-space:nowrap;flex:0 0 auto;padding-inline:16px}
/* contact rows: label, value, copy button on one aligned line */
.row:has(> .copy){display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:14px}
.row:has(> .copy) .v{justify-self:end;min-width:0;overflow-wrap:anywhere}
.row > .copy{align-self:center;margin:0;grid-column:3;justify-self:end}
/* WhatsApp country badges sit under their icon, not on top of the next one */
.soc{row-gap:22px;column-gap:12px;padding-bottom:10px}
.soc .wa-cc{inset-inline-end:auto;left:50%;right:auto;bottom:-16px;transform:translateX(-50%);border-radius:4px}
/* footer profile link: one line, size label kept with the title */
footer a[data-ev="profile_download"]{white-space:nowrap}
footer a[data-ev="profile_download"] .lat{font-size:12px;opacity:.85}
html[dir="rtl"] footer a[data-ev="profile_download"] .lat{margin-right:6px}
html:not([dir="rtl"]) footer a[data-ev="profile_download"] .lat{margin-left:6px}
/* the floating project-request button steps aside while the footer is on screen */
.rcp-l{transition:opacity .2s,transform .2s}
html.ft-in .rcp-l{opacity:0;pointer-events:none;transform:translateY(12px)}
footer{padding-bottom:max(72px,env(safe-area-inset-bottom,0px))}
@media (prefers-reduced-motion:reduce){.rcp-l{transition:none}}
/* 410-479 px phones (iPhone Plus / Pro Max): the header has no room for the search icon; search stays in the menu and footer */
@media (max-width:479px){.acts .srch{display:none}}
/* dark mode (palette v2): navy or bridge-blue text never sits on the dark navy background */
[data-theme=dark] :is(.pc-p strong,.pst-n b,.pst-v b){color:#4CC4FF}
[data-theme=dark] :is(details.more-d>summary,details.more-d>summary span,.hubl){color:#FAFAF7}
[data-theme=dark] .hubl:is(:hover,:focus-visible){color:#4CC4FF;border-color:#4CC4FF}
[data-theme=dark] .btn.line{color:#4CC4FF;border-color:#4CC4FF;background:transparent}
[data-theme=dark] .btn.dark{background:#2633FF;border-color:#4CC4FF;color:#fff}

footer .flang{display:inline-flex;flex-wrap:wrap;gap:8px;align-items:center}footer .flang a{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:4px 8px}

@font-face{font-family:'Almarai';font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/almarai-home-400.512b76efae.woff2) format('woff2');unicode-range:U+20,U+21,U+22,U+23,U+24,U+25,U+26,U+27,U+28,U+29,U+2A,U+2B,U+2C,U+2D,U+2E,U+2F,U+30,U+31,U+32,U+33,U+34,U+35,U+36,U+37,U+38,U+39,U+3A,U+3B,U+3C,U+3D,U+3E,U+3F,U+40,U+41,U+42,U+43,U+44,U+45,U+46,U+47,U+48,U+49,U+4A,U+4B,U+4C,U+4D,U+4E,U+4F,U+50,U+51,U+52,U+53,U+54,U+55,U+56,U+57,U+58,U+59,U+5A,U+5B,U+5C,U+5D,U+5E,U+5F,U+60,U+61,U+62,U+63,U+64,U+65,U+66,U+67,U+68,U+69,U+6A,U+6B,U+6C,U+6D,U+6E,U+6F,U+70,U+71,U+72,U+73,U+74,U+75,U+76,U+77,U+78,U+79,U+7A,U+7B,U+7C,U+7D,U+7E,U+A9,U+AB,U+B2,U+B7,U+BB,U+60C,U+61B,U+61F,U+621,U+622,U+623,U+624,U+625,U+626,U+627,U+628,U+629,U+62A,U+62B,U+62C,U+62D,U+62E,U+62F,U+630,U+631,U+632,U+633,U+634,U+635,U+636,U+637,U+638,U+639,U+63A,U+640,U+641,U+642,U+643,U+644,U+645,U+646,U+647,U+648,U+649,U+64A,U+64B,U+64D,U+64E,U+64F,U+651,U+652,U+660,U+669,U+66B,U+670,U+671,U+6F0,U+6F9,U+2019,U+201C,U+201D,U+2026}
@font-face{font-family:'Almarai';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/almarai-home-700.5eb49b227e.woff2) format('woff2');unicode-range:U+20,U+21,U+22,U+23,U+24,U+25,U+26,U+27,U+28,U+29,U+2A,U+2B,U+2C,U+2D,U+2E,U+2F,U+30,U+31,U+32,U+33,U+34,U+35,U+36,U+37,U+38,U+39,U+3A,U+3B,U+3C,U+3D,U+3E,U+3F,U+40,U+41,U+42,U+43,U+44,U+45,U+46,U+47,U+48,U+49,U+4A,U+4B,U+4C,U+4D,U+4E,U+4F,U+50,U+51,U+52,U+53,U+54,U+55,U+56,U+57,U+58,U+59,U+5A,U+5B,U+5C,U+5D,U+5E,U+5F,U+60,U+61,U+62,U+63,U+64,U+65,U+66,U+67,U+68,U+69,U+6A,U+6B,U+6C,U+6D,U+6E,U+6F,U+70,U+71,U+72,U+73,U+74,U+75,U+76,U+77,U+78,U+79,U+7A,U+7B,U+7C,U+7D,U+7E,U+A9,U+AB,U+B2,U+B7,U+BB,U+60C,U+61B,U+61F,U+621,U+622,U+623,U+624,U+625,U+626,U+627,U+628,U+629,U+62A,U+62B,U+62C,U+62D,U+62E,U+62F,U+630,U+631,U+632,U+633,U+634,U+635,U+636,U+637,U+638,U+639,U+63A,U+640,U+641,U+642,U+643,U+644,U+645,U+646,U+647,U+648,U+649,U+64A,U+64B,U+64D,U+64E,U+64F,U+651,U+652,U+660,U+669,U+66B,U+670,U+671,U+6F0,U+6F9,U+2019,U+201C,U+201D,U+2026}
@font-face{font-family:'Almarai';font-style:normal;font-weight:800;font-display:optional;src:url(/fonts/almarai-home-800.288f13efb7.woff2) format('woff2');unicode-range:U+20,U+21,U+22,U+23,U+24,U+25,U+26,U+27,U+28,U+29,U+2A,U+2B,U+2C,U+2D,U+2E,U+2F,U+30,U+31,U+32,U+33,U+34,U+35,U+36,U+37,U+38,U+39,U+3A,U+3B,U+3C,U+3D,U+3E,U+3F,U+40,U+41,U+42,U+43,U+44,U+45,U+46,U+47,U+48,U+49,U+4A,U+4B,U+4C,U+4D,U+4E,U+4F,U+50,U+51,U+52,U+53,U+54,U+55,U+56,U+57,U+58,U+59,U+5A,U+5B,U+5C,U+5D,U+5E,U+5F,U+60,U+61,U+62,U+63,U+64,U+65,U+66,U+67,U+68,U+69,U+6A,U+6B,U+6C,U+6D,U+6E,U+6F,U+70,U+71,U+72,U+73,U+74,U+75,U+76,U+77,U+78,U+79,U+7A,U+7B,U+7C,U+7D,U+7E,U+A9,U+AB,U+B2,U+B7,U+BB,U+60C,U+61B,U+61F,U+621,U+622,U+623,U+624,U+625,U+626,U+627,U+628,U+629,U+62A,U+62B,U+62C,U+62D,U+62E,U+62F,U+630,U+631,U+632,U+633,U+634,U+635,U+636,U+637,U+638,U+639,U+63A,U+640,U+641,U+642,U+643,U+644,U+645,U+646,U+647,U+648,U+649,U+64A,U+64B,U+64D,U+64E,U+64F,U+651,U+652,U+660,U+669,U+66B,U+670,U+671,U+6F0,U+6F9,U+2019,U+201C,U+201D,U+2026}

@font-face{font-family:'Almarai';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/almarai-hero-700.1351fb33b6.woff2) format('woff2');unicode-range:U+20,U+623,U+627,U+628,U+629,U+62A,U+62D,U+62E,U+62F,U+631,U+633,U+634,U+637,U+639,U+644,U+645,U+646,U+647,U+648,U+649,U+64A}
