:root{--bg:#071523;--fg:#faf5ea;--muted:#b9c3d0;--gold:#ddb973;--gold-strong:#efcb83;--border:rgba(214,177,104,.36);--divider:rgba(220,190,130,.23);--glass:rgba(255,255,255,.025);--shadow:rgba(0,0,0,.24);color-scheme:dark}
:root[data-theme=light]{--bg:#faf8f1;--fg:#0c213b;--muted:#596b80;--gold:#a5772f;--gold-strong:#a5772f;--border:rgba(167,118,46,.38);--divider:rgba(167,118,46,.25);--glass:rgba(255,255,255,.50);--shadow:rgba(8,26,50,.08);color-scheme:light}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;min-width:320px;min-height:100dvh;background-color:var(--bg);color:var(--fg);font-family:'Tajawal',system-ui,Tahoma,sans-serif;transition:background-color .26s,color .26s;-webkit-font-smoothing:antialiased}
html[lang=en] body{font-family:'DM Sans',system-ui,sans-serif}
body::before{content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;background-image:radial-gradient(circle,rgba(214,177,104,.105) .63px,transparent .83px);background-size:8px 8px;mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent);opacity:.66}
:root[data-theme=light] body::before{background-image:radial-gradient(circle,rgba(92,100,101,.18) .65px,transparent .95px);opacity:.6}
body::after{content:"";position:fixed;inset:0;z-index:-3;pointer-events:none;background:radial-gradient(ellipse at 50% 7%,rgba(36,60,89,.32),transparent 59%)}
:root[data-theme=light] body::after{background:radial-gradient(ellipse at 50% 5%,rgba(248,226,184,.18),transparent 60%)}
a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--gold-strong);outline-offset:5px}
.skip-link{position:absolute;z-index:100;top:-100px;inset-inline-start:30px;background:var(--gold-strong);color:var(--bg);padding:12px 20px;border-radius:30px}.skip-link:focus{top:15px}
.container{width:min(100% - 110px,1100px);margin-inline:auto}.site-wrap{max-width:1440px;margin:auto;position:relative}
.site-frame{position:fixed;pointer-events:none;inset:18px;z-index:4}.corner{position:absolute;width:28px;height:28px;border-color:var(--gold);opacity:.82}.corner--tl{top:0;left:0;border-top:1px solid;border-left:1px solid}.corner--tr{top:0;right:0;border-top:1px solid;border-right:1px solid}.corner--bl{bottom:0;left:0;border-bottom:1px solid;border-left:1px solid}.corner--br{bottom:0;right:0;border-bottom:1px solid;border-right:1px solid}
.header{height:90px;display:flex;justify-content:space-between;align-items:center;gap:24px;position:relative;z-index:3;border-bottom:1px solid var(--divider)}
.header-brand{display:block;width:48px;flex:none;opacity:.84;transition:opacity .2s}.header-brand img{width:44px;height:44px;object-fit:contain;display:block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.header-brand:hover{opacity:1}
.controls{display:flex;gap:12px;align-items:center;direction:ltr}.lang-switch{display:flex;gap:3px;padding:4px;border-radius:50px;border:1px solid var(--divider);background:var(--glass)}.lang-button{border:0;cursor:pointer;min-height:38px;min-width:65px;border-radius:50px;padding:6px 14px;color:var(--muted);background:transparent;font-size:15px;font-weight:700;transition:background-color .2s,color .2s}.lang-button.is-active{color:#102039;background:#faf7ee;box-shadow:0 1px 10px var(--shadow)}:root[data-theme=light] .lang-button.is-active{color:#faf7ee;background:#0c213b}.theme-button{width:48px;height:48px;border-radius:50%;background:var(--glass);border:1px solid var(--divider);color:var(--fg);display:grid;place-items:center;cursor:pointer;transition:transform .2s,border-color .2s}.theme-button:hover{transform:translateY(-2px);border-color:var(--gold)}.theme-button svg{width:22px;height:22px}.theme-moon{display:none}:root[data-theme=light] .theme-sun{display:none}:root[data-theme=light] .theme-moon{display:block}
.hero{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;min-height:680px;padding-top:24px;padding-bottom:76px}.hero-glow{position:absolute;z-index:-1;width:min(75vw,650px);height:430px;top:22px;left:50%;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(171,131,63,.075),transparent 65%);pointer-events:none}
.brand-lockup{position:relative;isolation:isolate;width:clamp(280px,38vw,445px);max-width:100%;margin:0 auto 15px;line-height:0;filter:drop-shadow(0 10px 16px rgba(0,0,0,.08))}.brand-lockup::before{content:"";position:absolute;z-index:-1;inset:9% -9% 0;pointer-events:none;background:radial-gradient(ellipse at center,rgba(94,126,167,.20),rgba(52,84,127,.07) 45%,transparent 74%);filter:blur(18px)}:root[data-theme=light] .brand-lockup::before{display:none}.brand-lockup img{width:100%;height:auto;display:block}
.coming-label{display:flex;align-items:center;justify-content:center;gap:18px;color:var(--gold-strong);font-size:15px;font-weight:700;letter-spacing:.09em;margin-bottom:24px}.coming-label>span:first-child,.coming-label>span:last-child{height:1px;width:40px;background:var(--gold);opacity:.8}html[lang=en] .coming-label{letter-spacing:.34em;font-size:12px}
h1{font-family:'Noto Naskh Arabic',Georgia,serif;font-size:clamp(36px,4.5vw,60px);line-height:1.52;letter-spacing:-.035em;font-weight:700;margin:0 auto;max-width:1000px;text-wrap:balance}html[lang=en] h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(40px,4.8vw,68px);line-height:1.26;letter-spacing:-.035em;font-weight:600;max-width:890px}
.intro-mobile{display:none}.hero-description{font-size:clamp(16px,1.43vw,20px);line-height:1.95;font-weight:500;color:var(--muted);max-width:790px;margin:16px auto 0;text-wrap:pretty}html[lang=en] .hero-description{line-height:1.8;max-width:740px}
.teaser{display:inline-flex;align-items:center;justify-content:center;gap:10px;color:var(--gold-strong);font-size:14px;font-weight:600;margin:20px 0 0;line-height:1.8}.pulse{width:7px;height:7px;flex:none;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(200,164,93,.13)}
.hero-cta{margin-top:25px;min-width:252px;border-radius:100px;padding:15px 35px;display:inline-flex;align-items:center;justify-content:center;gap:20px;font-size:16px;font-weight:800;background:linear-gradient(135deg,#f2d797,#d9b36b 65%,#f3d99b);color:#0b1c32;box-shadow:0 10px 38px rgba(0,0,0,.09);transition:transform .2s,box-shadow .2s}.hero-cta:hover{transform:translateY(-3px);box-shadow:0 15px 38px rgba(0,0,0,.18)}.arrow{font-family:Arial,sans-serif;font-size:19px;direction:ltr;display:inline-block}
.connect-hero{margin-top:41px;scroll-margin-top:30px}.social-heading{display:flex;align-items:center;justify-content:center;gap:18px}.social-heading span{height:1px;width:50px;background:var(--border)}.social-heading h2{font-size:14px;letter-spacing:.08em;font-weight:600;color:var(--muted);margin:0}.socials{display:flex;justify-content:center;gap:16px;margin-top:19px;direction:ltr}.socials a{display:grid;place-items:center;border-radius:50%;width:54px;height:54px;border:1px solid var(--border);background:var(--glass);color:var(--fg);transition:transform .2s,border-color .2s,background-color .2s}.socials a:hover{transform:translateY(-4px);border-color:var(--gold-strong);background:rgba(200,164,93,.13)}.socials svg{width:22px;height:22px}
.about{padding-top:36px;padding-bottom:72px;border-top:1px solid var(--divider)}.about-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--gold);font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:12px}.section-index{font-family:Georgia,serif;font-size:13px;letter-spacing:.18em;color:var(--muted);direction:ltr}
.about-heading-wrap{display:flex;align-items:start;gap:70px;justify-content:space-between;margin-top:25px;margin-bottom:39px}.about-heading-wrap h2{font-family:'Noto Naskh Arabic',serif;font-size:clamp(29px,2.8vw,43px);margin:0;line-height:1.55;font-weight:700;flex:1}.about-heading-wrap p{font-size:15px;color:var(--muted);line-height:2;max-width:520px;margin:0;flex:1}html[lang=en] .about-heading-wrap h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(27px,3vw,43px)}html[lang=en] .about-heading-wrap p{line-height:1.8}
.services{margin:0;padding:0;list-style:none}.service{min-height:94px;border-top:1px solid var(--divider);display:grid;grid-template-columns:57px minmax(190px,.80fr) minmax(0,1.20fr);align-items:center;column-gap:26px;padding:18px 12px}.service:last-child{border-bottom:1px solid var(--divider)}.service-number{font-family:Georgia,serif;color:var(--gold-strong);font-size:23px;direction:ltr}.service-name{font-family:'Noto Naskh Arabic',serif;font-size:24px;line-height:1.5;font-weight:700}html[lang=en] .service-name{font-family:'Playfair Display',Georgia,serif;font-size:22px}.service p{border-inline-start:1px solid var(--border);padding-inline-start:23px;min-height:35px;display:flex;align-items:center;font-size:16px;line-height:1.7;color:var(--muted);margin:0}
.closing{font-family:'Noto Naskh Arabic',serif;font-size:clamp(22px,2.5vw,32px);font-weight:600;line-height:1.7;text-align:center;color:var(--gold-strong);margin:60px auto 0;max-width:800px}html[lang=en] .closing{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-weight:500}
.footer{display:flex;align-items:center;justify-content:center;gap:30px;padding-bottom:32px;color:var(--muted)}.footer p{margin:0;white-space:nowrap;font-size:12px;direction:ltr}.foot-separator{padding-inline:6px}.foot-rule{height:1px;width:140px;background:var(--border)}
@media(max-width:760px){
  body{position:relative;min-width:0}
  .container{width:calc(100% - 48px)}
  /* On mobile the decorative frame belongs to the entire page, not the visible scroll window. */
  .site-frame{position:absolute;inset:12px;z-index:1}
  .corner{width:18px;height:18px}
  .header{height:67px;justify-content:center;border-bottom:0;padding-top:5px}
  .header-brand{display:none}
  .controls{gap:11px}
  .lang-button{min-width:62px;min-height:40px}
  .theme-button{height:46px;width:46px}
  .hero{padding-top:8px;padding-bottom:38px;min-height:0}
  .brand-lockup{width:min(84%,338px);margin-bottom:12px}
  .coming-label{margin-bottom:14px;font-size:14px;gap:14px}
  .coming-label>span:first-child,.coming-label>span:last-child{width:33px}
  .hero h1{font-size:clamp(31px,7.8vw,43px);line-height:1.43;max-width:570px}
  html[lang=en] .hero h1{font-size:clamp(32px,7.5vw,44px);line-height:1.27}
  .intro-full{display:none}.intro-mobile{display:inline}
  .hero-description{font-size:clamp(15.5px,3.85vw,17px);line-height:1.76;margin-top:14px;max-width:520px}
  html[lang=en] .hero-description{line-height:1.65}
  .teaser{font-size:13px;margin-top:15px;line-height:1.65;max-width:100%}
  .hero-cta{width:min(100%,460px);margin-top:17px;min-height:54px;padding-block:13px}
  .connect-hero{margin-top:27px;scroll-margin-top:15px}
  .social-heading{gap:12px}
  .social-heading span{width:34px}
  .socials{gap:15px;margin-top:14px}
  .socials a{width:52px;height:52px}
  .about{padding-top:26px;padding-bottom:38px}
  .about-heading-wrap{display:block;margin-top:19px;margin-bottom:24px}
  .about-heading-wrap h2{font-size:clamp(27px,7.2vw,32px)}
  .about-heading-wrap p{margin-top:8px;font-size:15px;line-height:1.85}
  .service{min-height:0;grid-template-columns:32px minmax(0,1fr);column-gap:13px;padding:18px 0;align-items:start}
  .service-number{grid-row:1 / span 2;font-size:17px;padding-top:6px}
  .service-name{font-size:clamp(20px,5.3vw,22px)}
  .service p{border:0;padding:0;grid-column:2;min-height:0;font-size:14.5px;margin-top:3px;line-height:1.7}
  html[lang=en] .service-name{font-size:clamp(20px,5.3vw,22px)}
  .closing{font-size:clamp(22px,5.9vw,25px);margin-top:35px}
  .footer{gap:15px;padding-bottom:34px}
  .foot-rule{flex:1;width:auto}
  .footer p{font-size:11px}
}
@media(max-width:380px){
  .container{width:calc(100% - 38px)}
  .hero h1{font-size:clamp(30px,8.15vw,33px)}
  html[lang=en] .hero h1{font-size:clamp(31px,8.1vw,34px)}
  .hero-description{font-size:15.25px}
  .brand-lockup{width:min(88%,304px)}
  .service p{font-size:14px}
  .foot-rule{display:none}
  .footer{padding-inline:22px}
}
@media(min-width:761px) and (max-width:1000px){.container{width:calc(100% - 90px)}.about-heading-wrap{gap:35px}.service{grid-template-columns:42px minmax(180px,.75fr) 1fr;gap:14px}.service p{padding-inline-start:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
