/* ============================================================
   الحمدان العقاري — شاشة تحميل بهوية المكتب
   Al Hamdan Estate — branded loading splash
   colors from the approved design: bg #003024 / gold #C9A96A-#D8C088
   ============================================================ */
#al-splash{
  position:fixed; inset:0; z-index:99999; overflow:hidden;
  background:#003024 radial-gradient(125% 85% at 50% 34%, #073c2e 0%, #003024 52%, #001b13 100%);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  font-family:'Manrope','Segoe UI',system-ui,-apple-system,sans-serif;
  opacity:0; transition:opacity .55s ease; will-change:opacity;
  -webkit-tap-highlight-color:transparent;
}
#al-splash.al-show{opacity:1}
#al-splash.al-hide{opacity:0; pointer-events:none}

/* subtle islamic geometric pattern */
#al-splash::before{
  content:""; position:absolute; inset:-8%; opacity:.5; pointer-events:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'><g fill='none' stroke='%23c9a96a' stroke-width='1' stroke-opacity='0.10'><path d='M70 6 L94 30 L134 30 L134 70 L110 94 L110 134 L70 134 L46 110 L6 110 L6 70 L30 46 L30 6 Z'/><circle cx='70' cy='70' r='27'/><path d='M0 70 H140 M70 0 V140'/></g></svg>");
  background-size:140px 140px; background-position:center;
}

/* gold double frame */
#al-splash::after{
  content:""; position:absolute; inset:3.2%; pointer-events:none;
  border:2px solid rgba(201,169,106,.55);
  box-shadow:inset 0 0 0 5px rgba(0,0,0,0), inset 0 0 0 6px rgba(201,169,106,.13);
}

/* logo */
.al-sp-logo{
  position:relative; z-index:2; display:block;
  animation:alUp .95s cubic-bezier(.2,.7,.3,1) both;
}
.al-sp-logo img{
  display:block; width:min(58vw,300px); height:auto; max-height:32vh;
  object-fit:contain; margin:0 auto;
  filter:drop-shadow(0 8px 30px rgba(201,169,106,.16));
}

/* tagline with gold diamonds */
.al-sp-tag{
  position:relative; z-index:2; margin-top:5.5vh;
  display:flex; align-items:center; gap:.9em;
  color:#d8c088; font-size:clamp(15px,4.3vw,25px); font-weight:400;
  animation:alUp .95s .22s cubic-bezier(.2,.7,.3,1) both;
}
.al-sp-tag i{
  position:relative; display:block; width:clamp(26px,8vw,44px); height:1px;
  background:rgba(201,169,106,.55);
}
.al-sp-tag i::after{
  content:""; position:absolute; top:-2.5px; width:6px; height:6px;
  background:#c9a96a; transform:rotate(45deg);
}
.al-sp-tag i:first-child::after{left:-3px}
.al-sp-tag i:last-child::after{right:-3px}

/* city skyline */
.al-sp-sky{
  position:absolute; left:0; right:0; bottom:11.5%;
  width:100%; height:auto;
  opacity:.17; filter:sepia(.6) saturate(1.7) brightness(1.15);
  pointer-events:none; z-index:1;
  animation:alFade 1.1s .35s both;
}

/* progress bar */
.al-sp-bar{
  position:absolute; left:50%; transform:translateX(-50%); bottom:7.4%;
  width:min(46%,340px); height:3px; border-radius:3px;
  background:rgba(255,255,255,.09); overflow:hidden; z-index:2;
}
.al-sp-fill{
  display:block; height:100%; width:0; border-radius:3px;
  background:linear-gradient(90deg,#775a19 0%,#c9a96a 55%,#e6d3a3 100%);
  box-shadow:0 0 14px rgba(201,169,106,.55);
  animation:alBar 2.6s .25s cubic-bezier(.32,.6,.4,1) forwards;
}
#al-splash.al-done .al-sp-fill{width:100%!important;animation:none;transition:width .35s ease}

/* url */
.al-sp-url{
  position:absolute; left:0; right:0; bottom:3.6%; text-align:center;
  color:rgba(216,192,136,.62); font-size:clamp(10px,2.7vw,13px);
  letter-spacing:.22em; direction:ltr; z-index:2;
  animation:alFadeIn 1.1s .45s both;
}

@keyframes alUp{from{opacity:0; transform:translateY(16px)} to{opacity:1; transform:none}}
@keyframes alFade{from{opacity:0} to{opacity:.17}}
@keyframes alFadeIn{from{opacity:0} to{opacity:1}}
@keyframes alBar{0%{width:0} 25%{width:36%} 60%{width:72%} 100%{width:88%}}

@media (prefers-reduced-motion: reduce){
  .al-sp-logo,.al-sp-tag{animation:none; opacity:1}
  .al-sp-sky{animation:none; opacity:.17}
  .al-sp-url{animation:none; opacity:1}
  .al-sp-fill{animation:none; width:88%}
}
