/* Elemary Pharaoh Identity 1.0.0 — sits on top of the Elemary theme; every block is switchable from body classes */

/* ================= fonts (self-hosted) ================= */
@font-face{font-family:"EK Kufi";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/noto-kufi-arabic-arabic-700-normal.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}
@font-face{font-family:"EK Kufi";font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/noto-kufi-arabic-arabic-900-normal.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}
@font-face{font-family:"EK Kufi";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/noto-kufi-arabic-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EK Kufi";font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/noto-kufi-arabic-latin-900-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"EK Amiri";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/amiri-arabic-400-normal.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}
@font-face{font-family:"EK Amiri";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/amiri-arabic-700-normal.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}
@font-face{font-family:"EK Amiri";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/amiri-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+FEFF,U+FFFD}
@font-face{font-family:"EK Amiri";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/amiri-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+FEFF,U+FFFD}
@font-face{font-family:"EK Cinzel";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/cinzel-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"EK Cinzel";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/cinzel-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"EK Cinzel";font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/cinzel-latin-900-normal.woff2) format("woff2")}

:root{--ekp-bg:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22420%22 height=%22420%22 viewBox=%220 0 420 420%22%3E%3Cg fill=%22none%22 stroke=%22%239a6a12%22 stroke-opacity=%22.16%22 stroke-width=%221.5%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cg transform=%22translate(70 70) rotate(0) scale(1)%22%3E%3Cg%3E%3Cpath d=%22M-26 0C-14 -16 14 -16 26 0C14 14 -14 14 -26 0Z%22/%3E%3Ccircle cx=%220%22 cy=%22-1%22 r=%227%22/%3E%3Ccircle cx=%220%22 cy=%22-1%22 r=%222.6%22 fill=%22%239a6a12%22/%3E%3Cpath d=%22M-24 -12C-10 -24 10 -24 24 -13M24 3C26 12 22 22 12 26C8 22 10 14 14 10M-6 11C-8 20 -16 24 -22 22%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(210 56) rotate(0) scale(0.95)%22%3E%3Cg%3E%3Cellipse cx=%220%22 cy=%22-14%22 rx=%229%22 ry=%2213%22/%3E%3Cellipse cx=%220%22 cy=%22-14%22 rx=%224%22 ry=%227%22/%3E%3Cpath d=%22M0 -1V32M-15 8H15%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(350 70) rotate(0) scale(1)%22%3E%3Cg%3E%3Cpath d=%22M0 24C-6 10 -6 -6 0 -22C6 -6 6 10 0 24Z%22/%3E%3Cpath d=%22M0 24C-16 20 -26 6 -26 -10C-14 -6 -6 6 0 24Z%22/%3E%3Cpath d=%22M0 24C16 20 26 6 26 -10C14 -6 6 6 0 24Z%22/%3E%3Cpath d=%22M-6 26H6M-14 30H14%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(36 210) rotate(0) scale(0.9)%22%3E%3Cg%3E%3Cellipse cx=%220%22 cy=%224%22 rx=%2211%22 ry=%2215%22/%3E%3Cpath d=%22M0 -11V19M-7 -3C-3 0 3 0 7 -3%22/%3E%3Ccircle cx=%220%22 cy=%22-17%22 r=%225%22/%3E%3Cpath d=%22M-11 -2C-24 -12 -32 -6 -32 0C-32 8 -22 8 -11 6M11 -2C24 -12 32 -6 32 0C32 8 22 8 11 6%22/%3E%3Cpath d=%22M-10 12L-18 22M10 12L18 22M-11 4L-22 12M11 4L22 12%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(150 205) rotate(-8) scale(1.05)%22%3E%3Cg%3E%3Crect x=%22-22%22 y=%22-14%22 width=%2244%22 height=%2228%22 rx=%2214%22/%3E%3Cpath d=%22M14 -14V14%22/%3E%3Cpath d=%22M-12 0H4M-8 -5V5%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(265 210) rotate(0) scale(0.95)%22%3E%3Cg%3E%3Cpath d=%22M-5 30V-28M5 30V-28M-12 30H12%22/%3E%3Cpath d=%22M-9 -28H9M-12 -20H12M-12 -12H12M-12 -4H12%22/%3E%3Cpath d=%22M-6 -28C-6 -34 6 -34 6 -28%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(380 210) rotate(0) scale(0.8)%22%3E%3Cg%3E%3Ccircle cx=%220%22 cy=%220%22 r=%229%22/%3E%3Cpath d=%22M-9 0C-24 -14 -36 -8 -38 -2C-30 -4 -22 -2 -14 3M9 0C24 -14 36 -8 38 -2C30 -4 22 -2 14 3%22/%3E%3Cpath d=%22M-12 8C-24 4 -32 6 -34 10M12 8C24 4 32 6 34 10%22/%3E%3Cpath d=%22M-4 9C-6 18 -2 20 0 24C2 20 6 18 4 9%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(105 350) rotate(10) scale(0.9)%22%3E%3Cg%3E%3Cpath d=%22M0 30C-12 20 -14 -10 0 -30C14 -10 12 20 0 30Z%22/%3E%3Cpath d=%22M0 30V-30M0 -18L-9 -12M0 -8L-10 -2M0 2L-9 8M0 -18L9 -12M0 -8L10 -2M0 2L9 8%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(225 355) rotate(0) scale(0.8)%22%3E%3Cg%3E%3Cellipse cx=%220%22 cy=%22-14%22 rx=%229%22 ry=%2213%22/%3E%3Cellipse cx=%220%22 cy=%22-14%22 rx=%224%22 ry=%227%22/%3E%3Cpath d=%22M0 -1V32M-15 8H15%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(340 350) rotate(0) scale(0.85)%22%3E%3Cg%3E%3Cpath d=%22M-26 0C-14 -16 14 -16 26 0C14 14 -14 14 -26 0Z%22/%3E%3Ccircle cx=%220%22 cy=%22-1%22 r=%227%22/%3E%3Ccircle cx=%220%22 cy=%22-1%22 r=%222.6%22 fill=%22%239a6a12%22/%3E%3Cpath d=%22M-24 -12C-10 -24 10 -24 24 -13M24 3C26 12 22 22 12 26C8 22 10 14 14 10M-6 11C-8 20 -16 24 -22 22%22/%3E%3C/g%3E%3C/g%3E%3Cg transform=%22translate(0 0) rotate(0) scale(0.001)%22%3E%3Cg%3E%3Cpath d=%22M0 24C-6 10 -6 -6 0 -22C6 -6 6 10 0 24Z%22/%3E%3Cpath d=%22M0 24C-16 20 -26 6 -26 -10C-14 -6 -6 6 0 24Z%22/%3E%3Cpath d=%22M0 24C16 20 26 6 26 -10C14 -6 6 6 0 24Z%22/%3E%3Cpath d=%22M-6 26H6M-14 30H14%22/%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E");--ekp-frieze:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2248%22 height=%2214%22 viewBox=%220 0 48 14%22%3E%3Cg fill=%22none%22 stroke=%22%239a6a12%22 stroke-width=%221.4%22 stroke-linejoin=%22round%22 stroke-linecap=%22round%22%3E%3Cpath d=%22M0 11L6 3L12 11L18 3L24 11L30 3L36 11L42 3L48 11%22/%3E%3Cpath d=%22M0 13H48%22/%3E%3C/g%3E%3C/svg%3E");--ekp-gold:#9a6a12}
html[data-mode="dark"]{--ekp-gold:#d9b15c}

/* ================= 1) FONTS ================= */
html body.ekp-fonts.ek-ar{--f-display:"EK Kufi","Reem Kufi","Cairo",system-ui,sans-serif}
html body.ekp-fonts.ek-en{--f-display:"EK Cinzel","Inter",Georgia,serif}
body.ekp-fonts.ek-ar .hero-name,body.ekp-fonts.ek-ar h1,body.ekp-fonts.ek-ar h2,body.ekp-fonts.ek-ar h3{font-family:var(--f-display);letter-spacing:0}
body.ekp-fonts.ek-ar .hero-name{font-weight:900;line-height:1.08}
body.ekp-fonts.ek-ar .hero-sub,body.ekp-fonts.ek-ar .jprose,body.ekp-fonts.ek-ar .vx-ex,body.ekp-fonts.ek-ar .jhead p,body.ekp-fonts.ek-ar .page-hero p,body.ekp-fonts.ek-ar .shead p{font-family:"EK Amiri","Cairo",serif;font-size:1.3em;line-height:1.9}
body.ekp-fonts.ek-ar .jprose{font-size:1.18rem}
body.ekp-fonts.ek-ar .topbar-msg{font-family:"EK Amiri","Cairo",serif;font-weight:700;font-size:15px}
body.ekp-fonts.ek-ar .btn,body.ekp-fonts.ek-ar .chip,body.ekp-fonts.ek-ar .tabbar a,body.ekp-fonts.ek-ar .tabbar button{font-family:var(--f-display);font-weight:700}
body.ekp-fonts.ek-ar .stk{font-family:var(--f-display)}
body.ekp-fonts.ek-en h1,body.ekp-fonts.ek-en h2,body.ekp-fonts.ek-en h3,body.ekp-fonts.ek-en h4,body.ekp-fonts.ek-en .eh-name,body.ekp-fonts.ek-en .eh-k,body.ekp-fonts.ek-en .btn,body.ekp-fonts.ek-en .chip,body.ekp-fonts.ek-en .vtitle,body.ekp-fonts.ek-en .vx-info strong,body.ekp-fonts.ek-en .vx-head b,body.ekp-fonts.ek-en .tabbar a,body.ekp-fonts.ek-en .tabbar button,body.ekp-fonts.ek-en .shead h2{font-family:var(--f-display)!important;letter-spacing:.02em!important}
body.ekp-fonts.ek-en .eh-name{font-weight:900;font-size:clamp(40px,5.6vw,92px)!important;line-height:1.02}
body.ekp-fonts.ek-en .eh-sub,body.ekp-fonts.ek-en .jprose{font-family:"EK Amiri",Georgia,serif;font-size:1.12em}

/* ================= 2) LOGO + MENU ================= */
body.ekp-logo .brand-mark{color:var(--ekp-gold)}
body.ekp-logo .brand-mark .ekp-logo{width:100%;height:100%;display:block;padding:3px}
body.ekp-logo.ek-ar .brand-mark{background:linear-gradient(160deg,rgba(var(--ar),.16),rgba(var(--ar),.04) 70%),var(--panel)}
body.ekp-logo.ek-en .brand-mark{width:44px;height:44px;border:1.5px solid var(--ekp-gold);border-radius:50%}
body.ekp-logo .brand{gap:10px}
/* the name sits in a cartouche */
body.ekp-logo .brand-name{position:relative;display:inline-flex;align-items:center;border:2px solid var(--ekp-gold);border-radius:999px;padding:4px;padding-inline:14px 30px;background:rgba(var(--ar),.05);line-height:1.5}
body.ekp-logo .brand-name::after{content:"";position:absolute;top:22%;bottom:22%;inset-inline-end:10px;width:2px;border-radius:2px;background:var(--ekp-gold)}
body.ekp-logo.ek-en .brand-name{font-size:14px;letter-spacing:.1em}
body.ekp-logo .foot-brand .brand-name{font-size:15px}

body.ekp-menu .site-head{border-bottom:2px solid var(--ekp-gold)!important;box-shadow:0 1px 0 rgba(0,0,0,.04)}
body.ekp-menu .site-head::after{content:"";position:absolute;inset:100% 0 auto 0;height:14px;background:var(--ekp-frieze) repeat-x 0 0/48px 14px;opacity:.55;pointer-events:none;z-index:-1}
body.ekp-menu .main-nav a{font-family:var(--f-display)!important;font-weight:700;border-radius:999px!important;text-transform:none}
body.ekp-menu.ek-ar .main-nav a{font-size:14.5px;padding:0 13px}
body.ekp-menu.ek-en .main-nav a{font-size:11.5px!important;letter-spacing:.07em!important;padding:0 9px!important;text-transform:uppercase}
body.ekp-menu .main-nav a::after{content:"";position:absolute;inset-inline:50%;bottom:3px;width:6px;height:6px;margin-inline-start:-3px;background:var(--ekp-gold);transform:rotate(45deg) scale(0);transition:transform .25s cubic-bezier(.2,1.6,.4,1);border-radius:1px}
body.ekp-menu .main-nav a:hover::after{transform:rotate(45deg) scale(1)}
body.ekp-menu .main-nav a.is-on{background:rgba(var(--ar),.10)!important;color:var(--ink)!important;box-shadow:inset 0 0 0 2px var(--ekp-gold)!important;border-radius:999px!important}
body.ekp-menu .main-nav a.is-on::after{transform:rotate(45deg) scale(0)}
body.ekp-menu.ek-en .main-nav a.is-on::before{display:none}
body.ekp-menu .tabbar{border-top:2px solid var(--ekp-gold)}
body.ekp-menu .tabbar a,body.ekp-menu .tabbar button{font-family:var(--f-display)!important;font-weight:700}
body.ekp-menu .tabbar a.is-on,body.ekp-menu .tabbar a[aria-current]{color:var(--ekp-gold)}
body.ekp-menu .drawer a{font-family:var(--f-display)!important}
body.ekp-menu .site-foot{position:relative;border-top:2px solid var(--ekp-gold)}
body.ekp-menu .site-foot::before{content:"";position:absolute;inset:-16px 0 auto 0;height:14px;background:var(--ekp-frieze) repeat-x 0 0/48px 14px;opacity:.55;pointer-events:none;transform:scaleY(-1)}
body.ekp-menu .shead h2::after{display:none}
body.ekp-menu .shead-rule{background:none;height:14px;background:var(--ekp-frieze) repeat-x 0 50%/48px 14px;opacity:.6;border:0}

/* ================= 3) BACKGROUND (faint hieroglyphs) ================= */
body.ekp-bg::after,html body.ekp-bg.ek-ar::after,html[data-mode="dark"] body.ekp-bg.ek-ar::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:var(--ekp-bg) 0 0/420px 420px repeat!important;opacity:.4}
body.ekp-bg.ekp-d1::after{opacity:.22}
body.ekp-bg.ekp-d3::after{opacity:.75}
html[data-mode="dark"] body.ekp-bg::after{opacity:.4}
html[data-mode="dark"] body.ekp-bg.ekp-d1::after{opacity:.22}
html[data-mode="dark"] body.ekp-bg.ekp-d3::after{opacity:.7}
@media(max-width:700px){body.ekp-bg::after{background-size:300px 300px!important}}

/* ================= 4) HERO — nothing on Karim's face ================= */
/* Arabic hero: stickers live on the shoulders, below the chin, and on the empty top corners */
body.ekp-face.ek-ar .hero-art{overflow:visible}
body.ekp-face.ek-ar .arch img{object-position:50% 12%}
body.ekp-face.ek-ar .stk-3{top:-1%;left:-3%;right:auto;inset-inline:auto;left:-3%;transform:rotate(-7deg)}
body.ekp-face.ek-ar .stk-1{top:60%;bottom:auto;right:-7%;left:auto;inset-inline:auto;right:-7%;transform:rotate(6deg)}
body.ekp-face.ek-ar .stk-2{top:auto;bottom:-2%;right:6%;left:auto;inset-inline:auto;right:6%;transform:rotate(-5deg)}
body.ekp-face.ek-ar .stk-4{bottom:5%;left:-5%;right:auto;inset-inline:auto;left:-5%}
@media(max-width:700px){
 body.ekp-face.ek-ar .stk{padding:6px 11px;font-size:12px;border-width:2px;box-shadow:3px 3px 0 var(--bd)}
 body.ekp-face.ek-ar .stk b{font-size:19px}
 body.ekp-face.ek-ar .stk-3{font-size:13px;top:-2%;left:-2%}
 body.ekp-face.ek-ar .stk-1{top:62%;right:-6%}
 body.ekp-face.ek-ar .stk-2{bottom:-5%;right:4%}
 body.ekp-face.ek-ar .stk-4{width:84px;bottom:2%;left:-4%}
}
/* English hero: the glass greeting card moves down to the chest, the face stays clear */
body.ekp-face.ek-en .eh-glass{top:auto!important;bottom:6%!important;right:-3%!important;left:auto!important}
body.ekp-face.ek-en .eh-main img{object-position:50% 10%}
@media(max-width:700px){body.ekp-face.ek-en .eh-glass{bottom:3%!important;right:4%!important}}

@media(max-width:700px){body.ekp-logo .brand-name{font-size:15px;padding-inline:10px 24px}body.ekp-logo.ek-en .brand-name{font-size:11px;letter-spacing:.06em}body.ekp-logo .brand-name::after{inset-inline-end:8px}body.ekp-logo .brand-mark{width:38px;height:38px}html,body{overflow-x:hidden}}
@media(max-width:1240px) and (min-width:701px){body.ekp-menu.ek-en .main-nav a{font-size:10.5px!important;letter-spacing:.02em!important;padding:0 6px!important}body.ekp-logo.ek-en .brand-name{font-size:11.5px;letter-spacing:.04em;padding-inline:10px 22px}body.ekp-menu.ek-ar .main-nav a{font-size:13.5px;padding:0 9px}}
