/* AEasyI — core styles (v3). Palette: Midnight Brass (chosen by Yahya 2026-10-02): warm black, ivory, brass, sage; light pages warm stone and olive. */
@font-face{font-family:"Geist";src:url(fonts/geist-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(fonts/instrument-serif-latin-400-italic.woff2) format("woff2");font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:"Instrument Serif";src:url(fonts/instrument-serif-latin-400-normal.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}
/* Arabic: IBM Plex Sans Arabic for text, Amiri for the brass accent lines. Trimmed to the standard Arabic alphabet, marks,
   digits and punctuation (fonts/README). Only Arabic pages use these families, so the Latin range here never touches English pages. */
@font-face{font-family:"IBM Plex Sans Arabic";src:url(fonts/plex-arabic-400.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0020-007E,U+00A0,U+00A9,U+00B7,U+00D7,U+2013-2014,U+2018-201D,U+2022,U+2026,U+060C,U+061B,U+061F,U+0621-0652,U+0660-066D,U+0670,U+06CC,U+200C-200F}
@font-face{font-family:"IBM Plex Sans Arabic";src:url(fonts/plex-arabic-500.woff2) format("woff2");font-weight:500;font-display:swap;unicode-range:U+0020-007E,U+00A0,U+00A9,U+00B7,U+00D7,U+2013-2014,U+2018-201D,U+2022,U+2026,U+060C,U+061B,U+061F,U+0621-0652,U+0660-066D,U+0670,U+06CC,U+200C-200F}
@font-face{font-family:"IBM Plex Sans Arabic";src:url(fonts/plex-arabic-600.woff2) format("woff2");font-weight:600;font-display:swap;unicode-range:U+0020-007E,U+00A0,U+00A9,U+00B7,U+00D7,U+2013-2014,U+2018-201D,U+2022,U+2026,U+060C,U+061B,U+061F,U+0621-0652,U+0660-066D,U+0670,U+06CC,U+200C-200F}
@font-face{font-family:"Amiri";src:url(fonts/amiri-arabic.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0020-007E,U+00A0,U+00A9,U+00B7,U+00D7,U+2013-2014,U+2018-201D,U+2022,U+2026,U+060C,U+061B,U+061F,U+0621-0652,U+0660-066D,U+0670,U+06CC,U+200C-200F}

:root{
  --sans:"Geist",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --serif:"Instrument Serif",ui-serif,Georgia,serif;
  --arabic:"IBM Plex Sans Arabic",ui-sans-serif,system-ui,"Geeza Pro","Segoe UI",sans-serif;
  --r-pill:999px; --r-xl:28px; --r-lg:20px; --r-md:14px;
  --wrap:1180px; --gut:clamp(16px,4vw,32px);
  --head-h:86px;
}
/* dark: midnight brass */
.t-dark{
  --bg:#13110E; --bg-2:#1A1712; --surface:rgba(239,231,218,.05); --surface-2:rgba(239,231,218,.08);
  --text:#EFE7DA; --muted:#B3A894; --line:rgba(239,231,218,.13);
  --accent:#C9A36A; --accent-2:#8FA58E; --glow:rgba(201,163,106,.45);
  --btn-bg:linear-gradient(180deg,#DDBB85,#B98F55); --btn-fg:#14100B; --btn-ring:rgba(255,236,210,.35);
  --ghost-bg:rgba(239,231,218,.06);
  --nav-bg:rgba(24,21,17,.62);
  color-scheme:dark;
}
/* light: warm stone */
.t-light{
  --bg:#F1EFEA; --bg-2:#E7E3DB; --surface:#FFFFFF; --surface-2:#F7F5F1;
  --text:#1A1712; --muted:#5C564C; --line:rgba(26,23,18,.10);
  --accent:#5E6B3A; --accent-2:#A9773E; --glow:rgba(94,107,58,.28);
  --btn-bg:#1A1712; --btn-fg:#FFFFFF; --btn-ring:rgba(255,255,255,.12);
  --ghost-bg:#FFFFFF;
  --nav-bg:rgba(255,255,255,.72);
  --marker:#E8D3A6;
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--head-h);-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-feature-settings:"ss01"}
img,video,canvas{display:block;max-width:100%}
a{color:inherit}
p{margin:0}
h1,h2,h3{margin:0;font-weight:520;letter-spacing:-.03em;text-wrap:balance}
.serif{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.01em}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--gut)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;inset-inline-start:12px;top:-80px;z-index:100;padding:10px 16px;border-radius:var(--r-pill);background:var(--text);color:var(--bg);text-decoration:none}
.skip:focus{top:12px}
main:focus{outline:none}
video:focus-visible,video:focus{outline:2px solid var(--accent);outline-offset:3px}

/* moving light background (assets/caustics.js) */
.bg-light{position:fixed;inset:0;width:100vw;height:100vh;z-index:-1;pointer-events:none;opacity:0;transition:opacity 1.2s ease}
.bg-light.on{opacity:1}

/* navigation: a floating glass pill */
.site-nav{position:sticky;top:12px;z-index:60;margin-top:12px}
.site-nav .bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:7px;padding-inline:20px 7px;border-radius:var(--r-pill);
  background:var(--nav-bg);border:1px solid var(--line);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);
  box-shadow:0 14px 40px -24px rgba(0,0,0,.55)}
.site-nav .logo{display:flex;align-items:center;min-height:44px}
.site-nav .logo img{height:26px;width:auto}
.site-nav .links{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.site-nav .links a{display:block;padding:10px 15px;border-radius:var(--r-pill);font-size:15px;color:var(--muted);text-decoration:none;transition:color .2s,background-color .2s}
.site-nav .links a:hover{color:var(--text)}
.site-nav .links a[aria-current="page"]{color:var(--text);background:var(--surface-2)}
.site-nav .cta{min-height:44px;padding:0 20px;font-size:15px}
.menu-btn{display:none;align-items:center;gap:8px;min-height:44px;padding:0 16px;border-radius:var(--r-pill);border:1px solid var(--line);background:var(--surface);color:var(--text);font:500 15px var(--sans);cursor:pointer}
.menu-btn .bars{position:relative;width:16px;height:10px}
.menu-btn .bars::before,.menu-btn .bars::after{content:"";position:absolute;left:0;right:0;height:1.6px;border-radius:2px;background:currentColor;transition:transform .25s ease,top .25s ease}
.menu-btn .bars::before{top:1px}.menu-btn .bars::after{top:7px}
.menu-btn[aria-expanded="true"] .bars::before{top:4px;transform:rotate(45deg)}
.menu-btn[aria-expanded="true"] .bars::after{top:4px;transform:rotate(-45deg)}
.drawer{display:none}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 26px;border-radius:var(--r-pill);
  font:500 16px/1.2 var(--sans);text-decoration:none;text-align:center;border:1px solid transparent;cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.btn-main{background:var(--btn-bg);color:var(--btn-fg);box-shadow:inset 0 0 0 1px var(--btn-ring),0 12px 30px -14px var(--glow)}
.btn-main:hover{transform:translateY(-1px);box-shadow:inset 0 0 0 1px var(--btn-ring),0 16px 36px -12px var(--glow)}
.btn-ghost{background:var(--ghost-bg);color:var(--text);border-color:var(--line)}
.btn-ghost:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--text) 30%,transparent)}
.btn-pair{display:flex;flex-wrap:wrap;gap:12px}

/* small rounded label */
.badge{display:inline-flex;align-items:center;gap:9px;padding-block:6px;padding-inline:7px 13px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--line);font-size:14px;color:var(--muted)}
.badge i{width:18px;height:18px;border-radius:50%;flex:none;background:radial-gradient(circle at 35% 30%,#fff 0 12%,transparent 40%),linear-gradient(135deg,var(--accent),var(--accent-2))}

/* type scale */
.h-hero{font-size:clamp(42px,5.6vw,76px);line-height:1.02;letter-spacing:-.04em}
.h-hero .serif{display:block;font-size:1.07em;line-height:1.02}
.h-sec{font-size:clamp(32px,4.2vw,54px);line-height:1.04;letter-spacing:-.035em}
.h-sec .serif{font-size:1.06em}
.lead{color:var(--muted);font-size:clamp(17px,1.35vw,19px);max-width:52ch}
.small{font-size:14px;color:var(--muted)}

.section{position:relative;padding-block:clamp(72px,10vw,130px)}
.stf{padding-block:clamp(56px,7vw,90px)}
.sec-head{display:flex;flex-direction:column;gap:16px;max-width:760px}
.sec-head.center{align-items:center;text-align:center;margin-inline:auto}

/* closing band and footer */
.closing{padding-block:clamp(80px,11vw,140px);text-align:center}
.closing .h-sec{max-width:18ch;margin-inline:auto}
.closing .btn-pair{justify-content:center;margin-top:34px}
.site-foot{border-top:1px solid var(--line);padding-block:44px 36px;font-size:15px;color:var(--muted)}
.site-foot .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
.site-foot img{height:24px;width:auto;margin-bottom:12px}
.site-foot h2{font-size:14px;font-weight:500;color:var(--text);letter-spacing:0;margin-bottom:10px}
.site-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.site-foot a{display:inline-flex;flex-wrap:wrap;align-items:center;column-gap:.35em;min-height:44px;padding:0;text-decoration:none}
.site-foot ul{gap:0}
.site-foot a:hover{color:var(--text)}
.site-foot .legal{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:22px;border-top:1px solid var(--line);font-size:14px}

/* language switch */
.lang{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:var(--r-pill);font-size:15px;color:var(--muted);text-decoration:none;border:1px solid var(--line);transition:color .2s,border-color .2s}
.lang:hover{color:var(--text);border-color:color-mix(in srgb,var(--text) 30%,transparent)}
.site-nav .end{display:flex;align-items:center;gap:8px}
.drawer .lang-row{display:none}

/* Arabic pages: right to left, Arabic type, no letter-spacing (it breaks joined letters), taller lines */
[lang="ar"] body,[lang="ar"] .btn,[lang="ar"] button,[lang="ar"] input,[lang="ar"] select,[lang="ar"] textarea{font-family:var(--arabic)}
[lang="ar"] *{letter-spacing:0!important}
[lang="ar"]{--sans:var(--arabic);--serif:"Amiri","Instrument Serif",ui-serif,serif;font-synthesis:none}
[lang="ar"] .door h2,[lang="ar"] .biz h3,[lang="ar"] .marquee li{font-style:normal}
[lang="ar"] body{font-size:18px;line-height:1.8;font-feature-settings:normal}
[lang="ar"] .serif{font-family:"Amiri",var(--serif);font-style:normal}
[lang="ar"] h1,[lang="ar"] h2,[lang="ar"] h3{font-weight:600}
[lang="ar"] .h-hero{line-height:1.3}
[lang="ar"] .h-hero .serif{line-height:1.45;font-size:1.04em;margin-top:.08em}
[lang="ar"] .h-sec{line-height:1.32}
[lang="ar"] .h-sec .serif{font-size:1.04em}
[lang="ar"] .lead{max-width:56ch;line-height:1.85}
.ltr{white-space:nowrap}
[lang="ar"] .ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}

/* the cursor: a dot that IS the pointer (assets/core.js). Native cursor hidden only on mouse devices. */
.cursor{position:fixed;left:0;top:0;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:#fff;pointer-events:none;z-index:9999;
  mix-blend-mode:difference;opacity:0;will-change:transform;
  transition:width .28s cubic-bezier(.2,.8,.2,1),height .28s cubic-bezier(.2,.8,.2,1),margin .28s cubic-bezier(.2,.8,.2,1),opacity .2s ease}
.cursor.on{opacity:1}
.cursor.link{width:20px;height:20px;margin:-10px 0 0 -10px}
.cursor.down{width:14px;height:14px;margin:-7px 0 0 -7px}
.cursor.text{opacity:0}
html.has-cursor,html.has-cursor body,html.has-cursor a,html.has-cursor button,html.has-cursor label,html.has-cursor summary,html.has-cursor [role="button"],html.has-cursor input[type="range"]{cursor:none}
html.has-cursor input:not([type="range"]):not([type="checkbox"]),html.has-cursor textarea,html.has-cursor select{cursor:text}
html.has-cursor select{cursor:pointer}

@media (max-width:900px){
  :root{--head-h:80px}
  .site-nav .links,.site-nav .cta{display:none}
  .menu-btn{display:inline-flex}
  .drawer{display:block;position:absolute;left:var(--gut);right:var(--gut);top:calc(100% + 8px);padding:10px;border-radius:24px;
    background:var(--nav-bg);border:1px solid var(--line);backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);
    box-shadow:0 30px 60px -30px rgba(0,0,0,.6);opacity:0;transform:translateY(-6px);visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}
  .drawer.open{opacity:1;transform:none;visibility:visible;transition:opacity .2s ease,transform .2s ease}
  .drawer ul{list-style:none;margin:0;padding:0}
  .drawer a{display:flex;align-items:center;justify-content:space-between;min-height:54px;padding:0 16px;border-radius:16px;font-size:20px;letter-spacing:-.01em;text-decoration:none;color:var(--text)}
  .drawer a[aria-current="page"]{background:var(--surface-2)}
  .drawer .btn{width:100%;margin-top:8px;justify-content:center}
  .drawer .btn-main{color:var(--btn-fg)}
  .site-nav .bar .lang{display:none}
  .drawer .lang-row{display:block;margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}
  .drawer .lang-row a{font-size:18px;color:var(--muted)}
  .site-foot .wrap{grid-template-columns:1fr 1fr}
  .site-foot .brand{grid-column:1/-1}
}
@media (max-width:600px){
  .btn-pair{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .btn-pair .btn{padding-inline:12px}
}
@media (max-width:359px){.btn-pair{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.drawer,.cursor{transition:none}}
