/* Native widget styles. Content and typography live in Elementor controls. */
body { padding-top:0; }
body.admin-bar .ea-site-header { top:32px; }
.ea-site-header { position:sticky;top:0;z-index:90;background:rgba(13,11,8,.94);backdrop-filter:blur(20px);border-bottom:1px solid var(--rule); }
.ea-header-inner .elementor-button {border:0;padding:10px 9px;font-size:11px;letter-spacing:1px;}
.ea-header-inner .ea-nav-link:last-child .elementor-button {border:1px solid var(--rule-strong);}
.ea-fallback-header {max-width:1150px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:12px 24px;gap:20px;}
.ea-fallback-header nav,.ea-fallback-header ul {display:flex;flex-wrap:wrap;gap:18px;font-size:12px;}
.ea-full-width {width:100%;}
.ea-section {border-top:1px solid var(--rule);}
.ea-full-width .e-con {min-width:0;}
.ea-full-width .elementor-widget-text-editor p:last-child {margin-bottom:0;}
.ea-full-width .elementor-widget-heading .elementor-heading-title b,.ea-full-width .elementor-widget-text-editor b {color:var(--gold);font-weight:500;}
.ea-full-width .elementor-widget {overflow-wrap:anywhere;}
.ea-title {position:sticky;top:115px;}
.ea-section-title .elementor-heading-title {letter-spacing:-2px;}
.ea-hero-title .elementor-heading-title {letter-spacing:-4px;}
.ea-portrait {position:relative;}
.ea-portrait::before {content:'';position:absolute;inset:20px -20px -20px 20px;border:1px solid var(--rule-strong);animation:drift 8s ease-in-out infinite;pointer-events:none;}
.ea-portrait-image {position:relative;overflow:hidden;}
.ea-portrait-image .elementor-widget-container {position:relative;}
.ea-portrait-image img {width:100%;height:clamp(440px,54vw,640px);object-fit:cover;}
.ea-portrait-image img.ea-ghost {position:absolute;inset:0;width:100%;height:100%;pointer-events:none;}
.ea-monogram.elementor-element {position:absolute;bottom:14px;right:16px;width:100px;pointer-events:none;filter:drop-shadow(0 12px 34px #000);}
.ea-hero-copy {padding-bottom:36px;}
.ea-vital {padding:18px 0;border-top:1px solid var(--rule);}
.ea-role,.ea-edu {border-bottom:1px solid var(--rule);padding:22px 0;}
.ea-achievement {padding-left:18px;position:relative;}
.ea-achievement:before {content:'•';position:absolute;left:0;color:var(--gold);}
.ea-edu>.elementor-widget-text-editor {flex-shrink:0;width:auto;}
.ea-fact {border:1px solid var(--rule);}
.ea-card {border:1px solid var(--rule);overflow:hidden;}
.ea-card-image img {height:190px;object-fit:cover;filter:saturate(.25);transition:transform .8s,filter .8s;width:100%;}
.ea-card:hover .ea-card-image img {filter:saturate(1);transform:scale(1.04);}
.ea-footer {border-top:1px solid var(--rule);text-align:center;}
.ea-footer-signature img {max-height:52px;width:auto;}
.ea-contact-form .field {width:100%;}
.ea-contact-form button:disabled {opacity:.55;cursor:wait;}
.ea-contact-form label {font-size:11px;letter-spacing:2px;}
.reader {padding-top:50px;}
.reader .prose ul {list-style:disc;padding-left:24px;}
.reader .prose h2,.reader .prose h3 {font-family:var(--font-display);color:var(--gold);margin:24px 0 12px;}
body.elementor-editor-active .ea-site-header {position:relative;top:0;}
body.elementor-editor-active .ea-title {position:static;}
body.elementor-editor-active .ea-portrait::before {animation:none;}
body.elementor-editor-active [data-reveal] {opacity:1;transform:none;}
@media(max-width:1024px){
 .ea-site-header {position:relative;}
 body.admin-bar .ea-site-header {top:0;}
 .ea-title {position:static;}
 .ea-header-inner>.e-con-inner {flex-wrap:wrap;justify-content:center;}
 .ea-header-inner .ea-nav {width:100%;justify-content:center;}
}
@media(max-width:767px){
 /* Elementor 4 keeps the inner container in a wrapping column on narrow screens.
    That can place the section heading and its content on top of each other. */
 .ea-split>.e-con-inner {flex-wrap:nowrap!important;justify-content:flex-start!important;gap:32px!important;}
 .ea-split>.e-con-inner>.e-con,.ea-hero>.e-con-inner>.e-con,.ea-facts>.e-con,.ea-vitals>.e-con,.ea-card {width:100%;flex:none!important;}
 /* Elementor stores the desktop sticky offsets per container. Clear every offset
    on phones so the title participates in normal document flow. */
 .ea-title {position:static!important;inset:auto!important;}
 .ea-flipped>.e-con-inner>.ea-title {order:-1;}
 .ea-nav {flex-direction:row;flex-wrap:wrap;justify-content:center;}
 .ea-nav .elementor-button {font-size:10px;padding:8px 5px;}
 .ea-hero-title .elementor-heading-title {letter-spacing:-2px;}
 .ea-portrait::before {inset:12px -8px -12px 8px;animation:none;}
 .ea-fallback-header {flex-direction:column;}
 .ea-fallback-header nav {justify-content:center;}
 .ea-edu {gap:8px;}
}
@media(prefers-reduced-motion:reduce){.ea-ghost {display:none;}.ea-portrait::before {animation:none;}}

.ea-ar {direction:rtl;text-align:right;}
.ea-site-header,.ea-site-footer {direction:ltr;}
.ea-service-card {border:1px solid var(--rule);transition:border-color .3s,transform .3s;}
.ea-service-card:hover {border-color:var(--gold);transform:translateY(-4px);}
.ea-service-page .elementor-widget-heading {margin-top:16px;}
@media(max-width:767px){.ea-service-card {width:100%;}}

.ea-role-details[hidden] {display:none;}
.ea-portrait-image.elementor-widget-image img {height:640px;object-fit:cover;}
@media(max-width:767px){.ea-portrait-image.elementor-widget-image img {height:500px;}}
.ea-lang-ar .ea-site-header,.ea-lang-ar .ea-site-footer {direction:rtl;}
.ea-lang-ar .ea-full-width {direction:rtl;text-align:right;}
.ea-lang-ar .ea-section-title .elementor-heading-title,.ea-lang-ar .ea-hero-title .elementor-heading-title {letter-spacing:0;}
.ea-lang-ar .ea-achievement {padding-left:0;padding-right:18px;}
.ea-lang-ar .ea-achievement:before {left:auto;right:0;}
.ea-lang-ar .ea-header-inner .elementor-button,.ea-lang-ar .ea-contact-form label {letter-spacing:0;}
.ea-lang-ar .ea-footer {text-align:center;}
.ea-lang-ar .ea-role-toggle .elementor-button,.ea-lang-ar .ea-contact-form {font-family:Cairo,sans-serif;}
.ea-language-switch .elementor-button {border:1px solid var(--gold);white-space:nowrap;}
.ea-lang-ar .ea-portrait::before {inset:20px 20px -20px -20px;}
.ea-lang-ar .elementor-widget-text-editor a[href^="mailto:"],.ea-lang-ar .elementor-widget-text-editor a[href^="tel:"] {direction:ltr;unicode-bidi:isolate;display:inline-block;}
/* Dynamic Journal carousel — inserted with [ehab_journal_carousel]. */
#journal .ea-card { display: none; }
.ea-journal-carousel { overflow: hidden; width: 100%; padding: 8px 0 20px; }
.ea-journal-track { display: flex; gap: 18px; width: max-content; will-change: transform; }
.ea-journal-slide { width: min(330px, 78vw); min-height: 430px; overflow: hidden; display: flex; flex-direction: column; border: 1px solid rgba(217,176,62,.30); background: #100e09; color: #f5f1e6; }
.ea-journal-image { display:block; height: 180px; overflow:hidden; }
.ea-journal-image img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.ea-journal-slide:hover .ea-journal-image img { transform:scale(1.05); }
.ea-journal-copy { display:flex; flex:1; flex-direction:column; gap:14px; padding:22px; }
.ea-journal-copy h3 { margin:0; color:#f5f1e6; font-family:var(--font-display, 'Alegreya Sans SC', sans-serif); font-size:27px; font-weight:300; line-height:1.08; }
.ea-journal-copy h3 a { color:inherit; text-decoration:none; }
.ea-journal-copy p { margin:0; color:#b0a68c; font-family:Montserrat, sans-serif; font-size:13px; line-height:1.65; }
.ea-journal-read { margin-top:auto; align-self:flex-start; border:1px solid rgba(217,176,62,.5); padding:11px 15px; color:#f5f1e6; font:600 11px/1 Montserrat,sans-serif; letter-spacing:1.5px; text-decoration:none; text-transform:uppercase; transition:background .2s,color .2s; }
.ea-journal-read:hover, .ea-journal-read:focus { background:#f0d27a; color:#0d0b08; }
.ea-journal-carousel[dir="rtl"] .ea-journal-read { align-self:flex-end; letter-spacing:0; font-family:Cairo,sans-serif; text-transform:none; }
@media (max-width: 767px) { .ea-journal-slide { width: 282px; min-height: 400px; } .ea-journal-image { height:158px; } .ea-journal-copy { padding:18px; } .ea-journal-copy h3 { font-size:24px; } }
@media (prefers-reduced-motion: reduce) { .ea-journal-track { transform:none!important; } .ea-journal-image img { transition:none; } }

.ea-portrait-image img:not(.ea-ghost) {transition:opacity .4s ease;}
.ea-portrait-image img.ea-portrait-fade {opacity:.12;}
@media(prefers-reduced-motion:reduce){.ea-portrait-image img:not(.ea-ghost){transition:none;}}
