:root{--ink:#142641;--muted:#5d6b80;--blue:#2468e8;--dark:#101f36;--lime:#80e3bb;--paper:#f6f8fc;--line:#dfe7f0;--white:#fff;--radius:19px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,"Segoe UI",system-ui,-apple-system,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
button,a{font:inherit}a{color:inherit}button{cursor:pointer}img{max-width:100%;height:auto}[hidden]{display:none!important}::selection{background:#c1d9ff}a:focus-visible,button:focus-visible{outline:3px solid #2a78ff;outline-offset:4px}.container{width:min(var(--max),calc(100% - 48px));margin:0 auto}
.skip-link{position:fixed;top:-100px;left:15px;z-index:10000;background:#fff;padding:12px 18px}.skip-link:focus{top:12px}
.site-header{height:80px;background:rgba(255,255,255,.95);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(14px)}.header-inner{height:100%;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{font-weight:900;letter-spacing:-.05em;display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-size:1.1rem}.brand-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;background:var(--dark);color:#fff;font-size:21px;letter-spacing:-.08em}.brand-icon span{color:var(--lime)}.brand-muted{color:var(--blue)}.site-nav{display:flex;align-items:center;gap:27px}.site-nav a{text-decoration:none;font-size:.83rem;font-weight:750;color:#4c5e75;transition:color .2s}.site-nav a:hover{color:var(--blue)}.site-nav .nav-contact{background:var(--dark);color:#fff;padding:11px 17px;border-radius:10px}.site-nav .nav-contact:hover{color:#fff;background:var(--blue)}.menu-toggle{display:none}
.hero{background:radial-gradient(circle at 14% 70%,#e8efff 0,transparent 39%),#f6f8fc;overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.16fr .84fr;gap:65px;align-items:center;padding:114px 0 86px}.hero-copy{max-width:700px}.eyebrow,.overline{font-size:.73rem;font-weight:850;letter-spacing:.19em;color:var(--blue);margin:0 0 23px;text-transform:uppercase}.eyebrow-line{display:inline-block;width:23px;height:2px;background:var(--blue);vertical-align:middle;margin-right:11px}.hero h1{font-weight:850;font-size:clamp(3.2rem,5.6vw,5.7rem);line-height:1.06;letter-spacing:-.065em;margin:0 0 28px}.gradient-word{color:var(--blue)}.lead{max-width:635px;font-size:1.075rem;color:var(--muted);line-height:1.85;margin:0 0 34px}.lead strong{color:var(--ink)}.hero-actions,.contact-buttons{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:50px;padding:12px 20px;border-radius:11px;text-decoration:none;font-size:.84rem;font-weight:800;transition:transform .2s,background .2s,color .2s;white-space:normal;text-align:center}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff}.button-primary:hover{background:#174fc1}.button-outline{border:1px solid #aebed2;background:transparent;color:var(--ink)}.button-outline:hover{background:#e7efff}.hero-foot{font-size:.76rem;color:var(--muted);margin-top:31px;display:flex;align-items:center;gap:10px}.status-light{width:7px;height:7px;background:#19ae80;border-radius:50%;box-shadow:0 0 0 4px #dcf7ec;flex:none}
.hero-visual{position:relative;background:linear-gradient(145deg,#101f36,#142c4e);min-height:445px;border-radius:27px;box-shadow:0 35px 60px #20344a28;color:#fff;overflow:visible;border:1px solid #294266}.visual-top{display:flex;align-items:center;gap:10px;padding:24px 27px;font-size:.66rem;font-weight:850;letter-spacing:.13em;color:#bbcbdf;border-bottom:1px solid #ffffff18}.live-circle{height:7px;width:7px;border-radius:50%;background:#81edc6}.top-right{margin-left:auto;color:#90a5c2;font-size:.61rem}.visual-core{position:relative;height:291px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle,#2d5b8c50,transparent 64%)}.orbit{position:absolute;border:1px solid #86b4da33;border-radius:50%}.orbit-outer{width:265px;height:265px}.orbit-inner{width:202px;height:202px;border-style:dashed}.orbit:before,.orbit:after{content:"";position:absolute;background:#81e7be;width:6px;height:6px;border-radius:50%;top:18%;left:10%}.orbit:after{top:auto;left:auto;right:6%;bottom:14%;background:#6ca4ff}.core-symbol{width:145px;height:145px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:29px;background:linear-gradient(140deg,#2468e8,#1c397b);box-shadow:0 16px 50px #03173480;border:1px solid #ffffff38;transform:rotate(-7deg)}.core-symbol span{font-size:4rem;letter-spacing:-.13em;font-weight:900;line-height:1}.core-symbol small{font-size:.47rem;letter-spacing:.13em;margin-top:8px;font-weight:900;color:#c9ddff}.orbit-dot{position:absolute;border-radius:50%;background:#85ecc4;box-shadow:0 0 0 8px #82f4d619;width:9px;height:9px}.dot-one{top:51px;right:110px}.dot-two{bottom:45px;left:93px}.dot-three{bottom:85px;right:55px;background:#78aaff}.visual-footer{display:grid;grid-template-columns:1fr 1fr;gap:15px;border-top:1px solid #ffffff18;padding:24px 27px}.visual-footer div{display:flex;flex-direction:column;gap:4px}.metric-label{font-size:.59rem;letter-spacing:.15em;font-weight:850;color:#8bb1df}.visual-footer strong{font-size:.73rem}.floating-note{position:absolute;bottom:63px;left:-34px;padding:14px 17px;background:#fff;color:#1b314f;border-radius:10px;box-shadow:0 14px 35px #03173426;font-weight:800;font-size:.72rem}.tiny-square{display:inline-block;width:9px;height:9px;background:#2ea8ea;border-radius:3px;margin-right:7px}.capability-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:23px 0 30px;border-top:1px solid #dce5f1}.capability-strip span{color:#687991;font-weight:850;letter-spacing:.09em;font-size:.66rem}
.section{padding:110px 0}.section-heading h2,.section-top h2,.contact-section h2{font-size:clamp(2.5rem,4.4vw,4.15rem);line-height:1.14;letter-spacing:-.055em;margin:0;font-weight:850}.section-heading em,.section-top h2 em,.contact-section h2 em{font-style:normal;color:var(--blue)}.section-top{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:45px}.section-top h2{max-width:670px}.section-intro{max-width:370px;color:var(--muted);font-size:.94rem;margin:0 0 7px}.about-section{background:#fff;border-top:1px solid var(--line)}.about-layout{display:grid;grid-template-columns:.73fr 1.27fr;gap:90px}.about-main{border-left:1px solid var(--line);padding-left:55px;color:var(--muted);font-size:.98rem}.about-main p{margin:0 0 17px;max-width:660px}.about-main .large-paragraph{font-size:1.2rem;line-height:1.7;color:#32455e}.about-main strong{color:var(--ink)}.about-links{display:flex;gap:23px;flex-wrap:wrap;margin-top:27px}.about-links a,.text-link{color:var(--blue);font-size:.85rem;font-weight:850;text-decoration:none}.about-links a:hover,.text-link:hover{text-decoration:underline}
.expertise-section{background:#f3f6fa}.expertise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.expertise-card{background:white;border:1px solid var(--line);padding:27px 24px;border-radius:18px;min-width:0;transition:transform .2s,box-shadow .2s}.expertise-card:hover{transform:translateY(-4px);box-shadow:0 12px 25px #26486d0c}.expertise-index{font-weight:900;color:#8b9cb2;font-size:.72rem}.expertise-glyph{height:70px;display:flex;align-items:center;color:var(--blue);font-size:2rem}.expertise-card h3{font-size:1.13rem;letter-spacing:-.03em;line-height:1.35;margin:5px 0 13px}.expertise-card p{font-size:.82rem;line-height:1.77;color:var(--muted);margin:0 0 18px}.tag-row{display:flex;flex-wrap:wrap;gap:6px}.tag-row span{background:#eef3fb;border:1px solid #e3ebf7;padding:4px 7px;border-radius:5px;font-size:.61rem;font-weight:750;color:#537097}
.projects-section{background:#fff}.filter-toolbar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:28px}.filter-button{border:1px solid #dae2ed;background:#fff;border-radius:9px;padding:9px 17px;color:#516278;font-size:.81rem;font-weight:800;transition:background .2s}.filter-button:hover{border-color:var(--blue);color:var(--blue)}.filter-button.is-active{background:var(--dark);color:white;border-color:var(--dark)}.projects-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.project-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #e1e7ef;border-radius:19px;overflow:hidden;transition:transform .2s,box-shadow .2s}.project-card:hover{transform:translateY(-4px);box-shadow:0 18px 38px #1e365014}.project-cover{height:195px;position:relative;display:flex;justify-content:center;align-items:center;overflow:hidden}.cover-number{position:absolute;top:18px;left:21px;font-size:.62rem;letter-spacing:.13em;font-weight:900;opacity:.75}.cover-mark{position:absolute;right:22px;top:12px;font-size:1.65rem;opacity:.48}.cover-word{font-weight:950;letter-spacing:-.075em;font-size:2.85rem;line-height:1}.cover-word span{color:#82ecca}.cover-word small{display:block;letter-spacing:.22em;font-size:.46rem;margin-top:17px;font-weight:900}.cover-onecall{background:radial-gradient(circle at 75% 40%,#3b73d4,#132c54 68%);color:#fff}.cover-toolkit{background:linear-gradient(140deg,#101d33,#1d354b);color:#a4f3d6}.terminal-lines{display:flex;flex-direction:column;gap:5px;font-size:.84rem;font-weight:800;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;transform:rotate(-4deg)}.cover-meta{background:radial-gradient(circle at 45% 45%,#547ef5,#172560);color:#fff}.meta-shape{font-size:5rem;font-weight:900;position:relative}.meta-shape i{position:absolute;width:17px;height:17px;border-radius:50%;background:#80e3bb;top:10px;right:-23px}.meta-shape i:last-child{top:auto;bottom:16px;right:-39px;background:#9fc2ff}.cover-research{background:linear-gradient(115deg,#151e36,#3c4b7a);color:#fff}.research-symbol{font-size:3.8rem;font-weight:900;letter-spacing:-.07em}.research-symbol span{color:#85e6bd}.cover-safwa{background:linear-gradient(120deg,#1e655b,#0f393e);color:#fff}.cover-imarket{background:linear-gradient(130deg,#dff4ff,#bdd8fe);color:#183764}.cover-imarket .cover-word span{color:#2860cb}.cover-nayvelo{background:linear-gradient(135deg,#111d39,#613cbb);color:#fff}.project-body{display:flex;flex:1;flex-direction:column;padding:24px}.project-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:.63rem;letter-spacing:.035em;color:#6d7d90;font-weight:850}.state{border:1px solid #d5e2f1;border-radius:6px;padding:3px 6px;color:#3b638e;white-space:nowrap}.project-body h3{font-size:1.45rem;letter-spacing:-.04em;line-height:1.2;margin:17px 0 11px}.project-body p{font-size:.85rem;color:#5b6d83;line-height:1.75;margin:0 0 23px}.project-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:auto}.project-links a{font-size:.78rem;font-weight:850;color:var(--blue);text-decoration:none}.project-links a:hover{text-decoration:underline}.link-muted{font-size:.77rem;color:#7b8798}.projects-note{font-size:.75rem;color:#718096;margin:22px 0 0}
.downloads-section{background:#eef3fa}.download-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.download-card{padding:34px;background:white;border:1px solid #dce4ee;border-radius:21px;display:grid;grid-template-columns:70px 1fr;gap:23px}.download-icon{height:62px;width:62px;background:#e1eafe;color:#1d5ac7;font-size:1rem;font-weight:900;display:grid;place-items:center;border-radius:16px;letter-spacing:-.02em}.code-icon{background:#e5f5f0;color:#1a8c6f}.download-kicker{font-size:.69rem;letter-spacing:.12em;color:#4876bb;font-weight:850;margin:2px 0 10px}.download-card h3{font-size:1.42rem;margin:0 0 12px;letter-spacing:-.035em}.download-card p:not(.download-kicker){font-size:.87rem;color:#65768a;line-height:1.8;margin:0 0 25px}.download-card strong{color:#304c6c}.download-actions{display:flex;flex-wrap:wrap;align-items:center;gap:17px}.download-actions .button{font-size:.78rem;min-height:44px;padding:10px 13px}.download-actions .text-link{font-size:.77rem}.download-advisory{display:flex;gap:15px;align-items:flex-start;margin-top:24px;color:#526781;font-size:.84rem;background:#e3ebf6;padding:18px 23px;border-radius:12px}.download-advisory>span{font-size:1.35rem;color:#1c62c9}.download-advisory p{margin:0}
.approach-section{background:white}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.process-step{padding:35px 25px 35px 0;margin-right:24px;border-right:1px solid var(--line)}.process-step:last-child{border:0;margin-right:0}.process-step>span{color:var(--blue);font-weight:900;font-size:.81rem}.process-step h3{font-size:1.25rem;letter-spacing:-.035em;margin:30px 0 10px}.process-step p{color:#65768a;font-size:.86rem;margin:0}.credentials-note{display:grid;grid-template-columns:.8fr 1.2fr;gap:35px;align-items:center;padding:38px;margin-top:38px;background:#f1f5fb;border-radius:18px}.credentials-note .overline{margin-bottom:12px}.credentials-note h3{font-size:1.2rem;margin:0;letter-spacing:-.03em}.credentials-note>p{color:#65768a;font-size:.86rem;margin:0}
.contact-section{background:#dceafe;padding:96px 0}.contact-layout{display:grid;grid-template-columns:1.4fr .6fr;gap:90px;align-items:center}.contact-section h2{max-width:690px}.contact-section p:not(.overline){max-width:590px;color:#516b88;margin:20px 0 31px}.button-dark{background:#12243e;color:#fff}.button-dark:hover{background:#244e85}.button-contact-outline{border:1px solid #91add4;color:#12243e}.contact-side{padding-left:35px;border-left:1px solid #b3c7e1;display:flex;flex-direction:column;gap:8px}.contact-side span{font-size:.68rem;font-weight:850;color:#5780b4;letter-spacing:.14em;margin-top:15px}.contact-side strong,.contact-side a{font-size:.87rem;text-decoration:none;overflow-wrap:anywhere}.contact-side a:hover{text-decoration:underline}.footer{padding:32px 0;background:#101f36;color:#ced9e8}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-inner p{font-size:.74rem}.footer-brand{color:#fff}
@media(max-width:1150px){.hero-layout{gap:40px}.expertise-grid{grid-template-columns:repeat(2,1fr)}.project-meta{flex-wrap:wrap}.project-cover{height:180px}}
@media(max-width:930px){.site-nav{gap:14px}.site-nav a{font-size:.76rem}.hero-layout{grid-template-columns:1fr;gap:45px;padding:85px 0 60px}.hero-copy{max-width:800px}.hero-visual{max-width:610px;width:100%;justify-self:center}.floating-note{left:-12px}.capability-strip{grid-template-columns:repeat(2,1fr)}.about-layout{grid-template-columns:1fr;gap:30px}.about-main{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.projects-grid{grid-template-columns:repeat(2,1fr)}.download-grid{grid-template-columns:1fr}.contact-layout{gap:40px}.section-top{align-items:start;flex-direction:column;gap:17px}}
@media(max-width:650px){.container{width:calc(100% - 34px)}.site-header{height:68px}.menu-toggle{width:43px;height:43px;display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;border:1px solid #dce3ed;border-radius:10px;background:white}.menu-toggle span{display:block;width:19px;height:2px;background:#173154;border-radius:2px}.site-nav{display:none;position:absolute;top:67px;left:0;right:0;background:#fff;box-shadow:0 16px 26px #13274321;padding:15px 20px 22px;flex-direction:column;align-items:stretch;gap:0}.site-nav.is-open{display:flex}.site-nav a{font-size:.95rem;padding:12px;border-bottom:1px solid #edf1f5}.site-nav .nav-contact{margin-top:12px;text-align:center;border:0}.hero-layout{padding:65px 0 48px}.hero h1{font-size:clamp(2.65rem,10.3vw,4rem)}.eyebrow,.overline{font-size:.64rem}.lead{font-size:.96rem}.hero-actions{align-items:stretch}.hero-actions .button{width:100%}.hero-visual{min-height:375px}.visual-core{height:230px}.orbit-outer{width:220px;height:220px}.orbit-inner{width:165px;height:165px}.core-symbol{width:117px;height:117px}.core-symbol span{font-size:3rem}.visual-top,.visual-footer{padding:20px}.floating-note{bottom:55px;left:-4px}.capability-strip{grid-template-columns:1fr 1fr;gap:15px}.capability-strip span{font-size:.57rem}.section{padding:75px 0}.section-heading h2,.section-top h2,.contact-section h2{font-size:clamp(2.25rem,8vw,3rem)}.expertise-grid,.projects-grid,.process-grid{grid-template-columns:1fr}.project-cover{height:195px}.download-card{grid-template-columns:1fr;padding:25px}.download-icon{width:55px;height:55px}.download-actions{align-items:start;flex-direction:column}.process-step{margin:0;border-right:0;border-bottom:1px solid var(--line);padding:23px 0}.process-step:last-child{border:0}.process-step h3{margin:10px 0}.credentials-note,.contact-layout{grid-template-columns:1fr;padding:24px}.contact-section{padding:70px 0}.contact-layout{padding:0}.contact-side{padding-left:0;padding-top:25px;border-left:0;border-top:1px solid #b3c7e1}.footer-inner{flex-wrap:wrap}.footer-inner p{margin:0}.footer-brand{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Personal-site extensions: multidisciplinary expertise, ventures and research journal. */
.expertise-section .expertise-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.research-section{background:#fff}
.journal-controls{display:flex;align-items:end;justify-content:space-between;gap:25px;flex-wrap:wrap;margin-bottom:18px}
.journal-filters{display:flex;flex-wrap:wrap;gap:8px}
.journal-filter{padding:9px 17px;border:1px solid var(--line);border-radius:9px;background:#fff;color:#516278;font-weight:800;font-size:.8rem}
.journal-filter.is-active{background:#12243e;color:white;border-color:#12243e}
.journal-search{display:flex;flex-direction:column;gap:5px;font-size:.72rem;font-weight:800;color:#65768a}
.journal-search input{min-width:240px;padding:12px 14px;border:1px solid #cdd9e8;border-radius:9px;background:#fff;color:var(--ink)}
.journal-count{font-size:.75rem;color:#6b7d92;margin:0 0 20px}
.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.journal-card{border:1px solid var(--line);border-radius:17px;background:#f8fafc;padding:30px;min-width:0;display:flex;flex-direction:column}
.journal-type,.venture-kind{font-size:.66rem;letter-spacing:.13em;font-weight:900;color:var(--blue)}
.journal-card h3{font-size:1.25rem;letter-spacing:-.03em;line-height:1.35;margin:17px 0 12px}
.journal-card p{color:var(--muted);font-size:.86rem;line-height:1.75;margin:0 0 22px}
.journal-card a,.venture-card a{font-size:.82rem;font-weight:850;text-decoration:none;color:var(--blue);margin-top:auto}
.journal-card a:hover,.venture-card a:hover{text-decoration:underline}
.journal-empty{padding:28px;color:#637691;text-align:center}
.ventures-section{background:#f3f6fb}
.ventures-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.venture-card{padding:32px;background:#fff;border:1px solid var(--line);border-radius:18px;display:flex;flex-direction:column;min-height:255px}
.venture-card h3{font-size:1.3rem;line-height:1.3;letter-spacing:-.03em;margin:16px 0 10px}
.venture-card p{font-size:.87rem;color:var(--muted);margin:0 0 15px}
.footer-inner a{color:#d6ebff}
@media(max-width:1000px){.expertise-section .expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ventures-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.expertise-section .expertise-grid,.journal-grid,.ventures-grid{grid-template-columns:1fr}.journal-search{width:100%}.journal-search input{min-width:0;width:100%}}


/* Professional delivery workflow — compact local image sprite, no external image host. */
.workflow-showcase{margin:45px 0 0;padding:35px 0 0;border-top:1px solid var(--line)}
.workflow-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:24px}
.workflow-heading .overline{margin:0 0 9px}
.workflow-heading h3{font-size:clamp(1.45rem,2.7vw,2.15rem);line-height:1.22;letter-spacing:-.04em;margin:0}
.workflow-heading>p{max-width:390px;font-size:.86rem;color:var(--muted);margin:0}
.workflow-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.workflow-card{display:flex;gap:15px;align-items:flex-start;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:15px;min-width:0}
.workflow-image{flex:none;width:90px;height:67px;border-radius:8px;background-color:#dbe7f5;background-image:url('./workflow-gallery.svg');background-repeat:no-repeat;background-size:200% 400%;border:1px solid #e1e7f0}
.workflow-image--design{background-position:0 0}
.workflow-image--development{background-position:100% 0}
.workflow-image--maintenance{background-position:0 33.333333%}
.workflow-image--planning{background-position:100% 33.333333%}
.workflow-image--requirements{background-position:0 66.666667%}
.workflow-image--architecture{background-position:100% 66.666667%}
.workflow-image--testing{background-position:0 100%}
.workflow-copy{min-width:0}
.workflow-copy>span{font-size:.59rem;letter-spacing:.1em;font-weight:850;color:var(--blue)}
.workflow-copy h4{margin:2px 0 5px;font-size:.94rem;letter-spacing:-.02em;line-height:1.3}
.workflow-copy p{margin:0;color:var(--muted);font-size:.74rem;line-height:1.65}
.workflow-card:last-child{grid-column:1/-1}
.workflow-disclosure{font-size:.73rem;color:#64788d;margin:18px 0 0;line-height:1.6}
@media(max-width:1080px){.workflow-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.workflow-heading{flex-direction:column;align-items:start;gap:9px}.workflow-gallery{grid-template-columns:1fr}.workflow-card{padding:13px;gap:13px}.workflow-image{width:90px;height:67px}}


/* Larger engineering photographs. The original JPEG, when present, renders without recompression;
   the existing thumbnail remains only as a graceful placeholder during asset migration. */
.workflow-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.workflow-card{display:flex;flex-direction:column;gap:0;align-items:stretch;min-width:0;padding:0;border-radius:16px;overflow:hidden;box-shadow:0 8px 32px rgba(20,38,65,.06)}
.workflow-card:last-child{grid-column:auto}
.workflow-image{display:block;position:relative;flex:none;width:100%;height:auto;aspect-ratio:4 / 3;border:0;border-radius:0;background-color:#dbe7f5;background-repeat:no-repeat,no-repeat;background-size:cover,200% 400%}
.workflow-image--requirements{background-image:url('./workflow/requirements-analysis.jpg'),url('./workflow-gallery.svg');background-position:center,0 66.666667%}
.workflow-image--planning{background-image:url('./workflow/planning.jpg'),url('./workflow-gallery.svg');background-position:center,100% 33.333333%}
.workflow-image--design{background-image:url('./workflow/design.jpg'),url('./workflow-gallery.svg');background-position:center,0 0}
.workflow-image--architecture{background-image:url('./workflow/software-architecture.jpg'),url('./workflow-gallery.svg');background-position:center,100% 66.666667%}
.workflow-image--development{background-image:url('./workflow/development.jpg'),url('./workflow-gallery.svg');background-position:center,100% 0}
.workflow-image--testing{background-image:url('./workflow/testing.jpg'),url('./workflow-gallery.svg');background-position:center,0 100%}
.workflow-image--maintenance{background-image:url('./workflow/maintenance.jpg'),url('./workflow-gallery.svg');background-position:center,0 33.333333%}
.workflow-copy{padding:24px 26px 28px}
.workflow-copy>span{font-size:.68rem}
.workflow-copy h4{font-size:1.16rem;line-height:1.25;margin:9px 0}
.workflow-copy p{font-size:.88rem;line-height:1.65}
.workflow-disclosure{display:none}
.social-presence{padding:86px 0;background:#fff;border-top:1px solid var(--line)}
.social-presence-head{display:flex;justify-content:space-between;align-items:end;gap:26px;margin-bottom:26px}
.social-presence-head .overline{margin:0 0 10px}
.social-presence-head h2{font-size:clamp(2rem,3.6vw,3.25rem);line-height:1.12;letter-spacing:-.05em;margin:0}
.social-presence-head>p{max-width:405px;color:var(--muted);font-size:.92rem;margin:0}
.social-account-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.social-account{display:flex;align-items:center;gap:12px;min-width:0;background:#fff;border:1px solid #dee7f1;border-radius:14px;padding:16px 13px;color:#172b46;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
.social-account:hover{transform:translateY(-2px);border-color:#b3cbe5;box-shadow:0 9px 24px rgba(28,47,78,.08);text-decoration:none}
.social-logo{width:44px;height:44px;border-radius:11px;flex:none;display:grid;place-items:center;background:#24292f}
.social-logo img{display:block;width:26px;height:26px;object-fit:contain}
.social-linkedin .social-logo{background:#0a66c2}
.social-x .social-logo{background:#153864}
.social-instagram .social-logo{background:linear-gradient(35deg,#feda77,#f58529 30%,#dd2a7b 60%,#8134af 85%,#515bd4)}
.social-tiktok .social-logo{background:#0b0b0b;box-shadow:inset 3px 0 #25f4ee,inset -3px 0 #fe2c55}
.social-facebook .social-logo{background:#0866ff}
.social-fiverr .social-logo{background:#1dbf73}
.social-freelancer .social-logo{background:#29b2fe}
.social-email .social-logo{background:#2468e8}
.social-info{display:flex;flex-direction:column;min-width:0;gap:2px}
.social-info strong{font-size:.88rem;line-height:1.35}
.social-info small{font-size:.69rem;color:#708098;overflow-wrap:anywhere;line-height:1.35}

@media(max-width:1050px){.social-account-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.workflow-gallery{grid-template-columns:1fr;gap:19px}.workflow-copy{padding:18px 21px 24px}.social-presence{padding:70px 0}.social-presence-head{flex-direction:column;align-items:flex-start;gap:12px}}
@media(max-width:420px){.social-account-grid{grid-template-columns:1fr}}

.social-youtube .social-logo{background:#ff0033}
.social-logo svg{display:block;width:26px;height:26px;color:#fff;fill:currentColor;flex:none}

.social-whatsapp .social-logo{background:#25d366}

.workflow-image.has-original{height:auto;aspect-ratio:auto;background-image:none;border:0}
.workflow-image.has-original img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}

/* Personal hero photograph: native-ratio original JPEG, never cropped or re-encoded. */
.hero-portrait-card{position:relative;width:100%;max-width:490px;aspect-ratio:1641 / 2048;min-height:445px;margin-inline:auto;overflow:hidden;border-radius:23px;border:1px solid #dbe4ef;background:linear-gradient(155deg,#f1f5fb,#dce8f6);box-shadow:0 26px 55px rgba(19,43,76,.16);isolation:isolate}
.hero-portrait-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:17px;color:#24416a}
.hero-portrait-monogram{font-size:clamp(4rem,10vw,7rem);line-height:1;letter-spacing:-.1em;font-weight:850}
.hero-portrait-name{font-size:.75rem;letter-spacing:.2em;font-weight:800}
.hero-portrait-image{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;object-position:center;opacity:0;transition:opacity .24s ease}
.hero-portrait-card.is-loaded .hero-portrait-image{opacity:1}
@media(max-width:650px){.hero-portrait-card{width:min(100%,460px);min-height:0;border-radius:18px}}
@media(prefers-reduced-motion:reduce){.hero-portrait-image{transition:none}}

/* Hall-of-Fame research objective and VAILABLE document-productivity identity. */
.cover-vailable{background:linear-gradient(135deg,#eaf2ff,#a7c7fb);color:#14365e}
.cover-vailable .cover-word{font-size:clamp(2.3rem,3.4vw,3.1rem);letter-spacing:-.06em}
.cover-vailable .cover-word small{color:#3f6393;letter-spacing:.18em}
.research-mission{margin-top:34px;padding:32px 36px;border:1px solid #dce5f1;border-radius:18px;display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:35px;background:#f3f7fe}
.research-mission .overline{margin:0 0 8px}.research-mission h3{font-size:clamp(1.35rem,2.4vw,1.85rem);line-height:1.27;margin:0;letter-spacing:-.03em}.research-mission>p{color:var(--muted);font-size:.9rem;line-height:1.8;margin:0}
@media(max-width:700px){.research-mission{grid-template-columns:1fr;gap:16px;padding:24px}}

/* Public professional identity page — reuse the existing Ahmad-IB design system. */
.identity-page{background:#f6f8fc;color:#192f4c}
.identity-page .site-header{position:sticky;top:0;z-index:30;background:#ffffffed;backdrop-filter:blur(16px)}
.identity-hero{padding:75px 0 82px;background:linear-gradient(133deg,#edf4ff,#f7faff 58%,#eff4fb);border-bottom:1px solid #dce5f1}
.identity-intro{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(260px,.78fr);gap:clamp(30px,6vw,90px);align-items:center}
.identity-copy h1{font-size:clamp(2.7rem,6vw,5.3rem);letter-spacing:-.065em;line-height:1.04;margin:13px 0}.identity-copy h1 em{color:#2860cb;font-style:normal}
.identity-handle{font-size:.85rem;letter-spacing:.03em;color:#506886;font-weight:550;margin:0 0 24px}
.identity-lead{font-size:clamp(1.1rem,1.7vw,1.35rem);line-height:1.6;font-weight:680;color:#173b69;max-width:670px}
.identity-copy>p:not(.overline):not(.identity-lead):not(.identity-handle){line-height:1.8;color:#566a82;max-width:660px}
.identity-actions,.identity-links{display:flex;gap:13px;flex-wrap:wrap;margin-top:26px}
.identity-portrait{border-radius:22px;border:1px solid #d8e3ef;overflow:hidden;box-shadow:0 25px 65px #1d396b21;background:#dae9fa}.identity-portrait img{display:block;width:100%;height:auto;aspect-ratio:1641 / 2048;object-fit:contain}
.identity-section{padding:75px 0;border-bottom:1px solid #e1e9f3}
.identity-section h2{font-size:clamp(1.75rem,3vw,2.6rem);letter-spacing:-.048em;line-height:1.15;margin:8px 0 27px}
.identity-section p{color:#566a82;line-height:1.8}
.identity-content{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,6vw,95px)}
.identity-content h2{max-width:410px}
.identity-work{background:#fff}
.identity-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.identity-cards article{border:1px solid #dae4f0;border-radius:17px;padding:26px;background:#f9fbff;min-width:0}
.identity-kicker{font-size:.69rem;font-weight:800;letter-spacing:.13em;color:#426bb3!important;margin:0}
.identity-cards h3{font-size:1.36rem;margin:13px 0;letter-spacing:-.03em}
.identity-cards article p:not(.identity-kicker){font-size:.9rem;min-height:110px}
.identity-page a{overflow-wrap:anywhere}
.identity-cards article a,.identity-more-link,.identity-research a{color:#205ec3;font-weight:730;text-decoration:none}
.identity-cards article a:hover,.identity-more-link:hover,.identity-research a:hover{text-decoration:underline}
.identity-more{margin-top:25px;font-size:.9rem}.identity-more a{color:#205ec3}
.identity-section-intro{max-width:710px}
.identity-research{list-style:none;padding:0;margin:30px 0;display:grid;gap:12px;max-width:900px}
.identity-research li{padding:17px 20px;border:1px solid #dbe5f1;border-radius:12px;background:#fff}
.identity-final{background:#edf4ff}
.identity-links a{padding:12px 16px;border:1px solid #bed4f1;border-radius:9px;background:#fff;color:#205ec3;font-weight:750;text-decoration:none}
.identity-links a:hover{border-color:#2860cb}
.identity-footer{padding:25px 0;background:#142c4e;color:#fff}
.identity-footer .container{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.81rem}
.identity-footer a{color:#c6ddff}
@media(max-width:800px){.identity-intro,.identity-content{grid-template-columns:1fr}.identity-intro{gap:32px}.identity-portrait{max-width:390px}.identity-cards{grid-template-columns:1fr}.identity-cards article p:not(.identity-kicker){min-height:0}.identity-hero,.identity-section{padding:52px 0}}
@media(max-width:520px){.identity-page .site-nav a:not(.nav-contact){display:none}.identity-links{gap:9px}}

/* Journal editorial architecture and evidence-first practice, 2026-11-05. */
.expertise-editorial .expertise-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.expertise-editorial .expertise-card{display:flex;flex-direction:column;gap:10px;border-radius:12px;padding:24px;background:#fff;border:1px solid #dce4ee;box-shadow:none}
.expertise-editorial .expertise-card--primary{grid-column:span 2;background:#f7f9fd;padding:33px;min-height:320px;border-top:3px solid #2468e8}
.expertise-editorial .expertise-card h3{font-size:1.22rem;margin:6px 0 1px}
.expertise-editorial .expertise-card--primary h3{font-size:clamp(1.55rem,2.4vw,2.1rem);max-width:460px}
.expertise-editorial .expertise-card p{margin:0 0 8px;font-size:.87rem;line-height:1.75}
.expertise-editorial .expertise-card--primary p{font-size:.95rem}
.expertise-editorial .expertise-card .tag-row{margin-top:auto}
.expertise-evidence{display:inline-flex;align-self:flex-start;margin-top:18px;font-size:.85rem;color:var(--blue);font-weight:800;text-underline-offset:4px}
.research-editorial{background:#f7f9fc}
.research-lead{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(290px,.85fr);gap:clamp(30px,5vw,78px);align-items:start;margin-bottom:76px}
.research-lead-copy h2{font-size:clamp(2.7rem,5.1vw,4.8rem);line-height:1.09;letter-spacing:-.06em;max-width:850px;margin:0 0 27px}
.research-lead-copy h2 em{font-style:normal;color:var(--blue)}
.research-intro{max-width:690px;font-size:1.02rem;line-height:1.85;color:#4e6178;margin:0 0 26px}
.research-publication-links{display:flex;flex-wrap:wrap;gap:12px 24px}
.research-publication-links a{font-size:.85rem;color:var(--blue);font-weight:800;text-underline-offset:4px}
.research-standard{padding:30px;border-top:3px solid var(--dark);background:#fff;border-bottom:1px solid #dce4ee}
.research-standard-label,.journal-proof-label{font-size:.7rem;font-weight:900;letter-spacing:.12em;color:var(--blue);margin:0 0 16px}
.research-standard h3{font-size:1.28rem;line-height:1.35;margin:0 0 18px;letter-spacing:-.02em}
.research-standard ol{padding-left:19px;margin:0;display:grid;gap:13px;color:#465b73;font-size:.84rem;line-height:1.7}
.research-standard strong{color:#1b304b}
.research-standard>p:last-child{border-top:1px solid #e4eaf1;margin:22px 0 0;padding-top:18px;font-size:.76rem;line-height:1.65;color:#66778b}
.research-library-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;border-top:1px solid #dce4ee;padding-top:29px;margin:0 0 25px}
.research-library-heading .overline{margin:0 0 6px}
.research-library-heading h3{font-size:clamp(1.7rem,3vw,2.35rem);letter-spacing:-.035em;line-height:1.2;margin:0}
.research-library-heading>p{color:var(--muted);font-size:.88rem;max-width:300px;margin:0}
.research-editorial .journal-controls{padding:16px 0 18px;margin-bottom:0;align-items:center}
.research-editorial .journal-filter{background:transparent;border:1px solid #cfdae7;border-radius:7px;font-size:.77rem;padding:10px 13px}
.research-editorial .journal-filter.is-active{background:var(--dark);color:#fff}
.research-editorial .journal-filter:focus-visible,.research-editorial input:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.research-editorial .journal-search{font-size:.76rem}
.research-editorial .journal-search input{min-width:215px}
.research-editorial .journal-count{margin:4px 0 18px}
.research-editorial .journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.research-editorial .journal-card{background:#fff;border:1px solid #dce4ee;border-radius:10px;min-height:260px;padding:29px;box-shadow:none}
.journal-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.journal-card-meta time,.journal-reading-kind{font-size:.68rem;letter-spacing:.06em;font-weight:750;color:#748499}
.research-editorial .journal-card h3{font-size:clamp(1.19rem,2vw,1.55rem);line-height:1.37;margin:17px 0 10px}
.research-editorial .journal-card p{font-size:.88rem;line-height:1.8;color:#52657a}
.journal-card-foot{display:flex;justify-content:space-between;align-items:end;flex-wrap:wrap;gap:10px 20px;border-top:1px solid #e5ebf3;padding-top:17px;margin-top:auto}
.journal-card-foot span,.journal-evidence{font-size:.72rem;color:#75869a;line-height:1.55}
.journal-card-foot a,.journal-main-link{font-size:.85rem;font-weight:850;color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.research-editorial .journal-card--featured{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:30px;padding:0;min-height:290px;border:1px solid #ccdaea;border-top:4px solid var(--blue);background:#fff}
.journal-feature-copy{padding:40px 40px 43px}
.journal-feature-copy h3{font-size:clamp(1.7rem,2.8vw,2.55rem)!important;margin:17px 0 15px!important;max-width:670px;letter-spacing:-.04em}
.journal-feature-copy p{max-width:650px;margin-bottom:27px!important}
.journal-feature-proof{padding:40px 33px;background:#eef4fb;border-left:1px solid #d7e3f0;display:flex;flex-direction:column;gap:13px}
.journal-feature-proof ul{margin:0;padding-left:19px;display:grid;gap:13px;color:#38516e;font-size:.83rem;line-height:1.7}
.journal-evidence{margin-top:auto}
@media(max-width:920px){.research-lead{grid-template-columns:1fr}.research-standard{max-width:650px}.research-editorial .journal-card--featured{grid-template-columns:1fr}.journal-feature-proof{border-left:0;border-top:1px solid #d7e3f0}}
@media(max-width:750px){.expertise-editorial .expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expertise-editorial .expertise-card--primary{grid-column:span 2}.research-editorial .journal-grid{grid-template-columns:1fr}.research-library-heading{align-items:flex-start;flex-direction:column;gap:8px}.journal-feature-copy{padding:28px}.journal-feature-proof{padding:27px}}
@media(max-width:520px){.expertise-editorial .expertise-grid{grid-template-columns:1fr}.expertise-editorial .expertise-card--primary{grid-column:span 1;padding:25px;min-height:0}.research-standard{padding:24px}.research-publication-links{gap:12px}.research-editorial .journal-card{padding:23px}.research-editorial .journal-card--featured{padding:0}.research-editorial .journal-search{width:100%}.research-editorial .journal-search input{width:100%}}
