@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&family=Tajawal:wght@400;500;700;800&display=swap');
:root{--bg:#101a20;--surface:#142128;--card:#182830;--ink:#eef3ef;--muted:#a9b8bc;--line:#2b3d43;--accent:#a9e3bc;--accent-ink:#122a20;--header:#101a20ed;--font:'DM Sans',sans-serif;--title:'Manrope',sans-serif;color-scheme:dark}
:root[data-theme=light]{--bg:#fafbf8;--surface:#eef2ed;--card:#fff;--ink:#152a2d;--muted:#526669;--line:#d4ded7;--accent:#246749;--accent-ink:#fff;--header:#fafbf8ed;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);line-height:1.7}html[lang=ar]{--font:'Tajawal',sans-serif;--title:'Tajawal',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{color:inherit}img{max-width:100%;display:block}p{color:var(--muted);margin:0 0 1.2em}h1,h2,h3,h4{font-family:var(--title);margin:0;font-weight:600;line-height:1.22}h2{font-size:clamp(30px,3.5vw,48px);letter-spacing:-1.7px}h3{font-size:24px;letter-spacing:-.5px}em{font-style:normal;color:var(--accent)}.wrap{max-width:1240px;margin-inline:auto;padding-inline:48px}.header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1440px;margin:auto;padding:21px 48px;background:var(--header);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;direction:ltr;font-size:10px;line-height:1.45;letter-spacing:2px}.brand b{font-weight:600}.brand-mark{font-family:var(--title);font-size:45px;letter-spacing:-4px;line-height:1}.brand-mark>span{color:var(--accent)}nav{display:flex;gap:23px;font-size:12px;color:var(--muted)}nav a:hover{color:var(--accent)}.controls{display:flex;align-items:center;gap:15px}.lang{font-size:13px;padding-inline-end:14px;border-inline-end:1px solid var(--line)}.icon-button{border:1px solid var(--line);background:transparent;border-radius:50%;width:39px;height:39px;display:grid;place-items:center}.icon-button:hover{background:var(--surface)}.menu-toggle{display:none}.skip{position:fixed;inset-inline-start:10px;top:-100px;z-index:100;background:var(--accent);color:var(--accent-ink);padding:12px}.skip:focus{top:10px}.hero{min-height:690px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:36px;padding-top:78px;padding-bottom:84px}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:600;color:var(--accent);display:flex;align-items:center;gap:12px;margin-bottom:26px}.line{width:28px;height:1px;background:var(--accent)}h1{font-size:clamp(44px,4.9vw,68px);line-height:1.13;letter-spacing:-3.6px;margin-bottom:28px}.intro{font-size:16px;max-width:470px;line-height:1.8}.hero-buttons{display:flex;gap:28px;align-items:center;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 22px;border:1px solid transparent;font-size:13px;border-radius:3px;font-weight:600}.primary{background:var(--accent);color:var(--accent-ink)}.primary:hover{filter:brightness(1.08)}.outline{border-color:var(--line);background:transparent}.text-link{font-size:13px;display:flex;align-items:center;gap:20px}.location{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:8px;margin-top:53px}.dot,.status i{width:6px;height:6px;border-radius:50%;background:var(--accent);display:inline-block}.hero-visual{height:460px;position:relative;display:flex;align-items:center;justify-content:center;direction:ltr}.orbit{position:absolute;border:1px solid var(--line);border-radius:50%}.orbit-one{width:400px;height:400px}.orbit-two{width:450px;height:450px;border-style:dashed;opacity:.5}.orbit-three{width:330px;height:330px}.identity{width:278px;height:335px;border:1px solid #658576;border-radius:140px 140px 9px 9px;background:linear-gradient(150deg,#253e3b,#172b31 75%);display:flex;align-items:center;flex-direction:column;justify-content:space-around;padding:38px 20px 23px;color:#ecf4ec;position:relative;box-shadow:0 24px 60px #0002}.identity-label,.identity-footer{font-size:8px;letter-spacing:2px;color:#a6bcb4}.identity-label{margin-top:15px}.monogram{font-family:Manrope,sans-serif;font-size:116px;letter-spacing:-12px;line-height:1}.monogram span{color:#a9e3bc}.wave{width:235px;color:#a9e3bc;opacity:.75}.floating{position:absolute;border:1px solid var(--line);background:var(--bg);padding:12px 18px;display:flex;gap:12px;align-items:center;font-size:11px;border-radius:4px;box-shadow:0 8px 20px #0001}.floating svg{color:var(--accent)}.f-one{top:68px;left:0;transform:rotate(-5deg)}.f-two{bottom:54px;right:0;transform:rotate(5deg)}.visual-coord{position:absolute;bottom:0;font-size:8px;color:var(--muted);letter-spacing:2px}.ticker{border-block:1px solid var(--line);overflow:hidden;background:var(--surface)}.ticker>div{max-width:1300px;margin:auto;padding:20px 30px;display:flex;align-items:center;justify-content:space-around;gap:24px;white-space:nowrap;direction:ltr}.ticker span{font-size:10px;letter-spacing:2px;color:var(--muted)}.ticker i{color:var(--accent);font-size:22px;font-style:normal}.section{padding-block:100px}.about{display:grid;grid-template-columns:1fr 1.25fr;gap:76px}.large-copy{font-size:19px;color:var(--ink);line-height:1.8}.about-copy>p:not(.large-copy){font-size:14px;line-height:1.9}.facts{margin-top:36px;padding-top:26px;border-top:1px solid var(--line);display:grid;grid-template-columns:.7fr 1.3fr 1.3fr;gap:18px}.facts strong{font-size:14px;font-family:var(--title);display:block}.facts div:first-child strong{font-size:25px;color:var(--accent);line-height:1.3}.facts span{font-size:10px;color:var(--muted);display:block;margin-top:8px}.shaded{background:var(--surface)}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}.skill{border-top:1px solid var(--line);padding-top:28px;position:relative}.skill-icon{width:44px;height:44px;display:grid;place-items:center;color:var(--accent);background:var(--bg);border:1px solid var(--line);border-radius:4px;margin-bottom:29px}.skill>.mini{position:absolute;inset-inline-end:0;top:30px}.mini{font-size:10px;letter-spacing:1px;color:var(--muted)}.skill h3{font-size:21px;margin-bottom:17px}.skill p{font-size:13px;line-height:1.9;min-height:100px;max-width:325px}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags span{font-size:9px;padding:4px 9px;border:1px solid var(--line);border-radius:3px;color:var(--muted)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:44px}.section-intro{max-width:560px;font-size:14px;margin-top:22px;margin-bottom:0}.filters{display:flex;border-bottom:1px solid var(--line);white-space:nowrap}.filters button{background:none;border:0;border-bottom:2px solid transparent;color:var(--muted);padding:9px 14px;font-size:11px}.filters button[aria-pressed=true]{color:var(--accent);border-bottom-color:var(--accent)}.projects-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.project{border:1px solid var(--line);border-radius:5px;overflow:hidden;background:var(--card)}.project[hidden]{display:none}.project-art{position:relative;overflow:hidden}.project-art img{transition:transform .4s}.project:hover img{transform:scale(1.025)}.status{position:absolute;bottom:13px;inset-inline-start:13px;font-size:8px;background:#101a20ed;color:#eef3ef;display:flex;align-items:center;gap:6px;padding:5px 9px;border-radius:3px}.project-info{padding:24px}.project h3{font-size:25px;margin-top:8px;margin-bottom:10px}.project h4{font-size:13px;line-height:1.6;margin-bottom:15px;min-height:42px}.project p{font-size:12px;line-height:1.9;min-height:112px}.project .tags{margin-top:20px}.experience-layout{display:grid;grid-template-columns:1fr 1.35fr;gap:100px}.experience-heading>p:not(.eyebrow){font-size:13px;line-height:1.9;margin-top:25px}.experience-heading .button{margin-top:12px}.employer>h3{margin-top:12px;font-size:25px}.job-title{font-size:14px;color:var(--ink);margin-top:10px}.employer>p:not(.job-title){font-size:12px;line-height:1.9}.assignment{font-size:11px;margin:27px 0 18px;letter-spacing:1px}.timeline{list-style:none;margin:0;padding:0;border-inline-start:1px solid var(--line)}.timeline li{position:relative;padding-inline-start:26px;padding-bottom:25px;display:grid;grid-template-columns:155px 1fr;gap:16px}.timeline li:before{content:'';position:absolute;inset-inline-start:-4px;top:7px;width:7px;height:7px;background:var(--accent);border-radius:50%}.timeline time{font-size:10px;color:var(--muted)}.timeline h4{font-size:13px;font-weight:500;line-height:1.5}.timeline p{font-size:10px;margin:4px 0 0}.egypt{border-top:1px solid var(--line);padding-top:25px;margin-top:6px}.education{border:1px solid var(--line);padding:23px;margin-top:36px;border-radius:4px;background:var(--bg)}.education h3{font-size:17px;line-height:1.5;margin-top:12px}.education p{font-size:11px;margin:10px 0 0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px}.gallery-item{background:transparent;border:0;text-align:start;padding:0}.gallery-item img{border:1px solid var(--line);border-radius:4px}.gallery-item>span{display:flex;justify-content:space-between;align-items:center;margin-top:17px}.gallery-item strong{font-size:14px;font-weight:500}.gallery-item svg{width:17px;color:var(--accent)}.gallery-item small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.links-section{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.15fr;gap:100px}.social-link{display:flex;align-items:center;gap:18px;border-bottom:1px solid var(--line);padding:20px 0}.social-link:first-child{padding-top:0}.link-icon{width:43px;height:43px;border:1px solid var(--line);display:grid;place-items:center;border-radius:4px;color:var(--accent)}.social-link>span:nth-child(2){flex:1}.social-link strong{font-size:16px;display:block;font-weight:500}.social-link small{font-size:11px;color:var(--muted)}.social-link>svg{width:17px}.social-link:hover strong{color:var(--accent)}.contact-banner{border:1px solid var(--line);border-radius:6px;background:var(--surface);display:flex;align-items:center;gap:35px;padding-block:45px;margin-bottom:65px;max-width:1144px}.contact-star{font-size:76px;color:var(--accent);line-height:1}.contact-banner h2{font-size:39px}.contact-banner p{font-size:12px;max-width:470px;margin-top:17px;margin-bottom:0}.contact-banner .button{margin-inline-start:auto;white-space:nowrap}.footer{border-top:1px solid var(--line);padding-block:27px;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer strong{font-size:13px;font-weight:500}.footer p{font-size:10px;margin:4px 0 0}.footer>span{font-size:9px;color:var(--muted)}.footer>a{width:35px;height:35px;border:1px solid var(--line);display:grid;place-items:center;border-radius:50%}dialog{width:min(950px,92vw);padding:40px 24px 20px;border:1px solid var(--line);background:var(--bg);color:var(--ink);border-radius:7px}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}dialog p{margin:15px 0 0;font-size:12px}dialog img{width:100%;height:auto;border-radius:3px}.dialog-close{position:absolute;top:5px;inset-inline-end:7px;width:30px;height:30px;border:0}.resume-body{background:#edf0ed;color:#16262b}.resume-tools{max-width:900px;margin:24px auto;display:flex;align-items:center;justify-content:space-between;padding-inline:25px;color:#16262b}.resume-tools a{font-size:13px}.resume{max-width:900px;background:#fff;margin:0 auto 40px;padding:55px 65px;font-size:13px;color:#16262b}.resume p{color:#41565c}.resume header{border-bottom:2px solid #246749;padding-bottom:20px}.resume h1{font-size:37px;letter-spacing:-1px;margin-bottom:12px}.resume h2{font-size:19px;letter-spacing:0;margin-bottom:14px}.resume header h2{color:#246749}.resume h3{font-size:15px;line-height:1.5;margin-bottom:8px}.resume section{margin-top:26px}.resume section>h2{border-bottom:1px solid #d4ded7;padding-bottom:8px;color:#246749}.resume li{margin-bottom:7px}.resume a{overflow-wrap:anywhere}html[lang=ar] .eyebrow{letter-spacing:.2px;font-size:13px}html[lang=ar] h1{letter-spacing:-1px;line-height:1.35;font-weight:700}html[lang=ar] h2{letter-spacing:0;line-height:1.4;font-weight:700}html[lang=ar] nav,html[lang=ar] .button,html[lang=ar] .text-link{font-size:14px}html[lang=ar] .project h4,html[lang=ar] .timeline h4{font-size:15px}html[lang=ar] .timeline time{font-size:12px}html[lang=ar] .project p,html[lang=ar] .skill p{font-size:14px}html[lang=ar] .tags span{font-size:11px}html[lang=ar] .timeline li{grid-template-columns:180px 1fr}
@media(min-width:1500px){.hero{min-height:750px}}@media(max-width:1100px){.wrap{padding-inline:32px}.header{padding-inline:32px}nav{gap:14px;font-size:11px}.hero{grid-template-columns:1.2fr 1fr;gap:20px}.orbit-one{width:340px;height:340px}.orbit-two{width:375px;height:375px}.orbit-three{width:295px;height:295px}.identity{width:240px;height:300px}.floating{padding:9px 12px}.experience-layout{gap:55px}.contact-banner{margin-inline:32px}.section-heading{display:block}.filters{width:max-content;margin-top:26px}.project-info{padding:20px}.links-section{gap:55px}}
@media(max-width:850px){.header{padding-block:16px}nav{display:none;position:absolute;top:100%;inset-inline:0;background:var(--bg);padding:22px 32px;border-bottom:1px solid var(--line);flex-wrap:wrap;gap:22px}nav.open{display:flex}.menu-toggle{display:grid}.hero{grid-template-columns:1fr;gap:22px;padding-top:55px;min-height:auto}.hero-copy{max-width:650px}.hero h1{font-size:60px}.hero-visual{max-width:450px;width:100%;height:390px;margin:10px auto 0}.hero .location{margin-top:28px}.f-one{left:15px;top:48px}.f-two{right:15px;bottom:42px}.section{padding-block:70px}.about{grid-template-columns:1fr;gap:30px}.about-copy{max-width:700px}.skills-grid{gap:25px;grid-template-columns:1fr}.skill{display:grid;grid-template-columns:60px 1fr;column-gap:20px}.skill h3{grid-column:2;grid-row:1;align-self:center}.skill-icon{grid-row:1;margin-bottom:0}.skill p{grid-column:2;max-width:none;min-height:0;margin-top:14px}.skill .tags{grid-column:2}.skill>.mini{display:none}.projects-grid{grid-template-columns:1fr 1fr}.project:last-child{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr}.project:last-child[hidden]{display:none}.project h4,.project p{min-height:0}.project-art img{height:100%;object-fit:cover}.experience-layout{grid-template-columns:1fr;gap:40px}.experience-heading{max-width:580px}.gallery-grid{gap:15px}.links-section{grid-template-columns:1fr;gap:35px}.contact-banner{flex-wrap:wrap}.contact-star{font-size:55px}.contact-banner .button{margin-inline-start:90px}.contact-banner h2{font-size:33px}.contact-banner>div{flex:1}.ticker>div{justify-content:flex-start}.ticker span{font-size:9px}}
@media(max-width:540px){.wrap{padding-inline:22px}.header{padding-inline:22px;gap:12px}.brand{font-size:8px;gap:9px}.brand-mark{font-size:38px}.controls{gap:9px}.lang{font-size:12px;padding-inline-end:10px}.icon-button{width:34px;height:34px}.hero{padding-top:43px;padding-bottom:50px}.hero h1{font-size:44px;letter-spacing:-2px}.hero .eyebrow{font-size:8px;letter-spacing:1px}.intro{font-size:14px}.hero-buttons{gap:22px}.button{padding:12px 16px;font-size:12px;gap:13px}.hero-visual{height:345px}.orbit-one{width:290px;height:290px}.orbit-two{width:325px;height:325px}.orbit-three{width:250px;height:250px}.identity{width:217px;height:270px;padding:25px 15px}.monogram{font-size:98px}.wave{width:200px}.floating{font-size:9px;gap:8px}.f-one{left:0;top:32px}.f-two{right:0;bottom:28px}.floating svg{width:17px}.visual-coord{font-size:7px;bottom:-8px}.section{padding-block:55px}.eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:18px}h2{font-size:31px;letter-spacing:-1px}.large-copy{font-size:17px}.facts{gap:13px;grid-template-columns:.7fr 1fr 1fr}.facts strong{font-size:11px}.facts span{font-size:9px}.projects-grid{grid-template-columns:1fr}.project:last-child{grid-column:auto;display:block}.project-info{padding:25px}.project-art img{height:auto}.project h3{font-size:27px}.project p{font-size:13px}.gallery-grid{grid-template-columns:1fr}.gallery-item{margin-bottom:15px}.timeline li{grid-template-columns:1fr;gap:6px;padding-bottom:27px}.timeline time{font-size:11px}.timeline h4{font-size:14px}.timeline p{font-size:11px}html[lang=ar] .timeline li{grid-template-columns:1fr}.contact-banner{margin-inline:22px;padding-inline:25px;padding-block:32px;gap:20px}.contact-star{display:none}.contact-banner>div{flex-basis:100%}.contact-banner .button{margin:0}.footer{gap:15px;flex-wrap:wrap}.footer>span{font-size:8px}.footer>a{margin-inline-start:auto}.resume{padding:30px 24px}.resume h1{font-size:30px}.resume-tools{gap:20px}.resume-tools .button{font-size:10px}html[lang=ar] .hero .eyebrow{font-size:10px;letter-spacing:0}html[lang=ar] .hero h1{font-size:41px}html[lang=ar] .facts strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media print{@page{size:A4;margin:16mm}.resume-body{background:#fff}.resume{padding:0;margin:0;max-width:none;font-size:10pt}.resume-tools{display:none}.resume h1{font-size:25pt}.resume h2{font-size:13pt}.resume h3{font-size:11pt}.resume section{margin-top:14px}.resume li{margin-bottom:4px}.resume p{margin-bottom:8px}.resume header{padding-bottom:12px}.resume h2,.resume h3{break-after:avoid}.resume p,.resume li{break-inside:avoid}}
.department-block{margin:26px 0 30px;padding:24px;border:1px solid var(--line);border-radius:4px;background:var(--bg)}.department-block h4{font-size:14px;margin:0 0 12px;line-height:1.6}.department-block p{font-size:11px;line-height:1.8}.department-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;list-style:none;padding:0;margin:20px 0 26px}.department-list li{display:flex;flex-direction:column;gap:3px;break-inside:avoid}.department-list strong{font-size:12px;color:var(--accent);font-weight:600}.department-list strong:empty{display:none}.department-list span{font-size:11px;color:var(--ink);line-height:1.6}.pdf-link{display:block;color:var(--accent);font-size:12px;text-decoration:underline;text-underline-offset:4px;margin-top:16px}.resume .department-block{background:#f7f9f7;border-color:#d4ded7;padding:15px}.resume .department-list{gap:8px 15px;margin:12px 0 18px}.resume .department-list span{color:#16262b}.resume .department-list strong{color:#246749}.resume .pdf-link{color:#246749}.resume-tools{flex-wrap:wrap}.resume-tools .pdf-link{margin:0}@media(max-width:540px){.department-list{grid-template-columns:1fr}.department-block{padding:20px}html[lang=ar] .department-list span{font-size:14px}html[lang=ar] .department-block p{font-size:13px}}@media print{.resume .department-list{grid-template-columns:1fr 1fr}.resume .department-block{padding:10px}.resume .department-list span{font-size:9pt}}
