/* ==========================================================================
   Homepage redesign (1.0.102), body.eb-home only, loaded after public.css.
   A full-screen hero over the branches' own photos (slow zoom, crossfade,
   progress bars), the search box docked on its edge, image-led branch cards, a bento «لماذا إليت», dark testimonials,
   a contact panel and the membership band. Motion lives in home.js and
   switches off for visitors who ask for reduced motion.
   ========================================================================== */

.eb-home{
  --hx-navy:#06122E; --hx-ink:#0B1E42; --hx-soft:#F5F8FD;
  --hx-ease:cubic-bezier(.2,.7,.2,1);
  background:var(--hx-soft);
}

/* Reading progress along the top edge */
.hx-progress{
  position:fixed; top:0; right:0; left:0; height:3px; z-index:300; pointer-events:none;
  transform:scaleX(0); transform-origin:right center;
  background:linear-gradient(270deg, var(--accent), var(--primary), #7C5CFF);
}

/* ---------- Header: see-through over the hero, the white bar once scrolled ---------- */
.eb-home .pub-header-inner{transition:background .4s var(--hx-ease), border-color .4s var(--hx-ease), box-shadow .4s var(--hx-ease);}
.eb-home .header-logo{transition:filter .4s var(--hx-ease);}
.eb-home.hx-top .pub-header-inner{
  background:rgba(6,18,46,.22); border-color:rgba(255,255,255,.16); box-shadow:none;
}
.eb-home.hx-top .header-logo{filter:brightness(0) invert(1);}
.eb-home.hx-top .mobile-menu-btn{background:rgba(255,255,255,.14); color:#fff;}
@media (min-width:901px){
  .eb-home .pub-nav{transition:background .4s var(--hx-ease), color .4s var(--hx-ease);}
  .eb-home.hx-top .pub-nav{background:rgba(255,255,255,.08); color:rgba(255,255,255,.84);}
  .eb-home.hx-top .pub-nav a:hover{background:rgba(255,255,255,.14); color:#fff;}
  .eb-home.hx-top .pub-nav a.active{background:rgba(255,255,255,.96); color:var(--primary-dark); box-shadow:none;}
}

/* ---------- Hero ---------- */
.eb-home .hero.hx{
  position:relative; isolation:isolate; overflow:hidden; display:flex; align-items:center;
  min-height:clamp(660px, 100vh, 980px); padding:calc(var(--eb-hdr-space) + 60px) 28px 170px;
  background:var(--hx-navy); text-align:right;
}
.eb-home .hero.hx.hx-noimg{background:radial-gradient(120% 140% at 85% -10%, #123a9c 0%, #0E2E7A 35%, #06122E 100%);}
.hx-media{position:absolute; inset:-8% 0 0 0; z-index:-3; will-change:transform;}
.hx-slide{position:absolute; inset:0; opacity:0; transition:opacity 1.6s var(--hx-ease);}
.hx-slide.is-on{opacity:1; z-index:2;}
.hx-slide.is-out{opacity:1; z-index:1; transition:none;} /* the old photo waits under the new one */
.hx-slide img{width:100%; height:100%; object-fit:cover; display:block; transform:scale(1.14); transform-origin:62% 40%;}
.hx-slide.is-on img, .hx-slide.is-out img{animation:hxKen 10s ease-out forwards;}
.hx-paused .hx-slide img{animation-play-state:paused;}
@keyframes hxKen{from{transform:scale(1.16);} to{transform:scale(1.03);}}
.hx-shade{
  position:absolute; inset:0; z-index:-2; pointer-events:none;
  background:
    linear-gradient(270deg, rgba(6,18,46,.94) 0%, rgba(6,18,46,.78) 34%, rgba(6,18,46,.34) 66%, rgba(6,18,46,.5) 100%),
    linear-gradient(0deg, rgba(6,18,46,.96) 0%, rgba(6,18,46,0) 42%),
    linear-gradient(180deg, rgba(6,18,46,.55) 0%, rgba(6,18,46,0) 22%);
}
.hx-orb{position:absolute; z-index:-1; border-radius:50%; filter:blur(80px); pointer-events:none; animation:hxFloat 16s ease-in-out infinite alternate;}
.hx-orb-a{width:460px; height:460px; top:-160px; right:-120px; background:rgba(30,90,220,.55);}
.hx-orb-b{width:380px; height:380px; bottom:-170px; left:18%; background:rgba(0,168,232,.32); animation-delay:-7s;}
@keyframes hxFloat{to{transform:translate3d(-50px,40px,0) scale(1.12);}}

.hx-inner{width:100%; max-width:1240px; margin:0 auto;}
.hx-copy{max-width:700px;}
.eb-home .hero.hx h1.hx-title{
  opacity:1; animation:none; margin:0 0 22px; color:#fff;
  font-size:clamp(40px, 6.4vw, 84px); line-height:1.12; font-weight:800; text-wrap:balance;
}
.eb-home .hx-title .hx-wm{
  display:inline-block; overflow:hidden; vertical-align:bottom;
  padding:.12em 0 .2em; margin:-.12em 0 -.2em;
  background:none; -webkit-text-fill-color:currentColor; color:inherit; animation:none;
}
.eb-home .hx-title .hx-w{
  display:inline-block; transform:translateY(112%);
  background:none; -webkit-text-fill-color:currentColor; color:#fff;
  animation:hxWord 1s var(--hx-ease) forwards; animation-delay:calc(.18s + var(--w) * .12s);
}
.eb-home .hx-title .hx-w.hx-accent{
  background:linear-gradient(90deg, #8FD3FF, #00A8E8, #5C8AF0, #8FD3FF); background-size:220% auto;
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent;
  animation:hxWord 1s var(--hx-ease) calc(.18s + var(--w) * .12s) forwards, hxShine 4.5s linear 1.6s infinite;
}
@keyframes hxWord{to{transform:none;}}
@keyframes hxShine{to{background-position:220% center;}}
@keyframes hxFade{from{opacity:0; transform:translateY(16px);} to{opacity:1; transform:none;}}

.eb-home .hero.hx .hx-sub{
  max-width:610px; margin:0 0 32px; color:#C9D8F5; font-size:clamp(15px, 1.35vw, 18.5px); line-height:1.9;
  opacity:0; animation:hxFade .9s var(--hx-ease) .78s forwards;
}
.hx-ctas{display:flex; flex-wrap:wrap; gap:12px; margin-bottom:46px; opacity:0; animation:hxFade .9s var(--hx-ease) .92s forwards;}
.hx-btn{
  position:relative; overflow:hidden; isolation:isolate; display:inline-flex; align-items:center; gap:10px;
  height:56px; padding:0 28px; border-radius:16px; font-size:15.5px; font-weight:800; white-space:nowrap;
  transition:transform .3s var(--hx-ease), box-shadow .3s var(--hx-ease), background .3s var(--hx-ease), color .3s var(--hx-ease);
}
.hx-btn svg{width:19px; height:19px; flex:none;}
.hx-btn:hover{transform:translateY(-2px);}
.hx-btn-primary{color:#fff; background:linear-gradient(135deg, #2C6BF0, #00A8E8); box-shadow:0 18px 40px -14px rgba(0,168,232,.75);}
.hx-btn-primary:hover{box-shadow:0 24px 46px -14px rgba(0,168,232,.85);}
.hx-btn-primary::after, .mx-btn::after{
  content:""; position:absolute; z-index:-1; top:0; bottom:0; right:-70%; width:45%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.5), transparent); transform:skewX(-20deg);
  transition:right .8s var(--hx-ease);
}
.hx-btn-primary:hover::after, .mx-btn:hover::after{right:135%;}
.hx-btn-glass{color:#fff; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.26); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);}
.hx-btn-glass:hover{background:rgba(255,255,255,.18);}
.eb-home a.hx-btn-primary, .eb-home a.hx-btn-glass{color:#fff;} /* .eb-public a{color:inherit} outranks the plain classes */

.hx-stats{display:flex; flex-wrap:wrap; max-width:720px; opacity:0; animation:hxFade .9s var(--hx-ease) 1.06s forwards;}
/* Equal columns, but never narrower than their own number (a fixed min-width
   let «+10 سنوات» run into «24/7» on wide screens). */
.hx-stat{flex:1 1 0; padding:2px 22px; border-inline-start:1px solid rgba(255,255,255,.16);}
.hx-stat:first-child{padding-inline-start:0; border-inline-start:none;}
.hx-stat b{display:block; color:#fff; font-size:clamp(22px, 2.3vw, 31px); font-weight:800; line-height:1.2; white-space:nowrap;}
.hx-stat small{display:block; margin-top:5px; color:#9FB7E3; font-size:12.5px; font-weight:600; line-height:1.6;}

/* Which branch is on screen, and the slide progress */
.hx-now{position:absolute; z-index:2; left:max(48px, calc((100% - 1144px) / 2)); bottom:118px; display:flex; flex-direction:column; align-items:flex-end; gap:12px; opacity:0; animation:hxFade .9s var(--hx-ease) 1.3s forwards;}
.hx-now-label{
  display:inline-flex; align-items:center; gap:8px; padding:9px 16px; border-radius:999px; color:#fff;
  background:rgba(6,18,46,.42); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  font-size:13.5px;
}
.hx-now-label svg{width:15px; height:15px; color:var(--accent); flex:none;}
.hx-now-label b{font-weight:800;}
.hx-now-label small{color:#9FB7E3; font-weight:700; font-size:12.5px;}
.hx-now-label small:not(:empty)::before{content:"· "; color:rgba(255,255,255,.4);}
.hx-now-label.is-swap b, .hx-now-label.is-swap small{animation:hxFade .7s var(--hx-ease);}
.hx-bars{display:flex; gap:7px;}
.hx-bar{width:46px; height:4px; padding:0; border:none; border-radius:4px; overflow:hidden; cursor:pointer; background:rgba(255,255,255,.24);}
.hx-bar i{display:block; width:0; height:100%; border-radius:inherit; background:#fff; margin-inline-start:0;}
.hx-bar.is-done i{width:100%;}
.hx-bar.is-on i{animation:hxBar var(--hx-dur, 6.5s) linear forwards;}
.hx-paused .hx-bar.is-on i{animation-play-state:paused;}
@keyframes hxBar{to{width:100%;}}

/* ---------- The search box, docked on the hero's lower edge ---------- */
.hx-dock{position:relative; z-index:6; max-width:1184px; margin:-92px auto 0; padding:0 20px; opacity:0; animation:hxFade 1s var(--hx-ease) 1.18s forwards;}
.eb-home .search-card{
  max-width:none; margin:0; padding:18px; gap:12px; border-radius:26px; text-align:right;
  background:#fff; border:1px solid rgba(15,40,90,.06); backdrop-filter:none; -webkit-backdrop-filter:none;
  box-shadow:0 36px 80px -32px rgba(8,25,70,.5), 0 6px 18px rgba(8,25,70,.06);
}
@media (min-width:1081px){ .eb-home .search-card{grid-template-columns:1.3fr 1fr 1fr 1fr auto;} }
.eb-home .search-card .field label{color:var(--text-soft); font-size:11.5px; font-weight:800; margin-bottom:7px; padding-inline-start:4px;}
.eb-home .search-card .box{height:54px; padding:0 14px; border-radius:15px; border:1.5px solid transparent; background:#F3F6FC; transition:border-color .25s, background .25s, box-shadow .25s;}
.eb-home .search-card .box:hover{border-color:#D3E0FA;}
.eb-home .search-card .box:focus-within, .eb-home .search-card .box-trigger[aria-expanded="true"]{border-color:var(--primary); background:#fff; box-shadow:0 0 0 4px rgba(30,90,220,.1);}
.eb-home .search-card .btn-primary{height:54px; padding:0 28px; border-radius:15px; font-size:15px; position:relative; overflow:hidden;}
.eb-home .search-card.is-called{animation:hxCall 1.6s var(--hx-ease);}
@keyframes hxCall{
  0%, 100%{box-shadow:0 36px 80px -32px rgba(8,25,70,.5), 0 0 0 0 rgba(30,90,220,0);}
  30%{box-shadow:0 36px 80px -32px rgba(8,25,70,.5), 0 0 0 8px rgba(30,90,220,.22);}
}

/* ---------- Section headings ---------- */
.eb-home .section{padding-top:72px; padding-bottom:40px;}
.eb-home .section-head{align-items:flex-end; margin-bottom:34px;}
.sx-eyebrow{
  display:inline-flex; align-items:center; gap:8px; margin-bottom:14px; padding:7px 14px; border-radius:999px;
  background:rgba(30,90,220,.08); color:var(--primary); font-size:12.5px; font-weight:800;
}
.sx-eyebrow i{width:6px; height:6px; border-radius:50%; background:currentColor; box-shadow:0 0 0 4px rgba(30,90,220,.12);}
.sx-eyebrow.sx-light{background:rgba(255,255,255,.1); color:#9FD8FF; border:1px solid rgba(255,255,255,.14);}
.sx-eyebrow.sx-light i{box-shadow:0 0 0 4px rgba(0,168,232,.18);}
/* «نحن هنا لمساعدتك»: a green dot that breathes, like an "online" status. */
.sx-eyebrow.sx-online i{width:8px; height:8px; background:#2EE07A; animation:sxOnline 2s ease-out infinite;}
@keyframes sxOnline{
  0%{box-shadow:0 0 0 0 rgba(46,224,122,.65);}
  70%{box-shadow:0 0 0 9px rgba(46,224,122,0);}
  100%{box-shadow:0 0 0 0 rgba(46,224,122,0);}
}
.eb-home .section-head h2{margin:0 0 10px; color:var(--hx-ink); font-size:clamp(28px, 3.3vw, 44px); line-height:1.22; font-weight:800;}
.eb-home .section-head p{max-width:600px; color:var(--text-soft); font-size:15.5px; line-height:1.85;}
.eb-home .section-head.sx-center{justify-content:center; text-align:center;}
.eb-home .section-head.sx-center p{margin-inline:auto;}
.eb-home .sx-filter{width:230px;}
.eb-home .sx-filter .box{height:50px; border-radius:15px; background:#fff; border:1.5px solid var(--border-soft); box-shadow:0 10px 26px -18px rgba(8,25,70,.35);}

/* Scroll reveals: a little further and softer than the other pages */
.eb-home .reveal{transform:translateY(38px); transition:opacity 1s var(--hx-ease), transform 1s var(--hx-ease);}
.eb-home .reveal[data-reveal="zoom"]{transform:scale(.94);}
.eb-home .reveal.revealed{opacity:1; transform:none;}

/* ---------- Branch cards: the photo is the card ---------- */
.eb-home .branch-grid{gap:22px;}
.eb-home .branch-card{
  position:relative; isolation:isolate; display:block; aspect-ratio:4/5; padding:0; border:none; border-radius:28px;
  background:var(--hx-ink); color:#fff; overflow:hidden;
  box-shadow:0 26px 54px -26px rgba(8,25,70,.6);
  transform:perspective(1100px) rotateX(0deg) rotateY(0deg) translateY(0);
  transition:transform .55s var(--hx-ease), box-shadow .55s var(--hx-ease);
}
.eb-home .branch-card:hover{transform:perspective(1100px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) translateY(-10px); box-shadow:0 44px 74px -30px rgba(8,25,70,.65); border-color:transparent;}
.eb-home .branch-card.active{box-shadow:0 0 0 3px #fff, 0 0 0 6px var(--primary), 0 44px 74px -30px rgba(8,25,70,.6);}
.eb-home .bc-photo{position:absolute; inset:0; z-index:-1; aspect-ratio:auto; background:linear-gradient(160deg, var(--primary-dark), var(--hx-navy));}
.eb-home .bc-photo img{transition:transform 1.6s var(--hx-ease);}
.eb-home .branch-card:hover .bc-photo img{transform:scale(1.1);}
.eb-home .bc-photo::after{background:linear-gradient(180deg, rgba(6,18,46,.2) 0%, rgba(6,18,46,0) 28%, rgba(6,18,46,.55) 60%, rgba(6,18,46,.96) 100%);}
.eb-home .bc-city{
  top:18px; right:18px; padding:7px 13px; color:#fff; font-size:12px;
  background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.24); box-shadow:none;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
}
.eb-home .bc-city .bc-ic{color:#fff;}
.eb-home .bc-check{top:18px; left:18px;}
.eb-home .bc-name{right:22px; left:22px; bottom:132px; font-size:clamp(20px, 1.8vw, 25px); line-height:1.3;}
.eb-home .bc-body{position:absolute; right:0; left:0; bottom:0; z-index:2; gap:12px; padding:0 22px 22px; background:none;}
.eb-home .bc-rooms{color:#C9D8F5; font-size:13px;}
.eb-home .bc-rooms .bc-ic{color:#8FD3FF;}
.eb-home .bc-foot{padding-top:14px; border-top:1px solid rgba(255,255,255,.16);}
.eb-home .bc-price{color:#9FB7E3;}
.eb-home .bc-price b{color:#fff; font-size:23px;}
.eb-home .bc-go{
  height:44px; padding:0 16px; border-radius:999px; color:#fff;
  background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.24); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  transition:background .35s var(--hx-ease), color .35s var(--hx-ease);
}
.eb-home .bc-go .bc-ic{color:currentColor;}
.eb-home .branch-card:hover .bc-go{background:#fff; color:var(--primary-dark);}
.eb-home .skel-branch-card{aspect-ratio:4/5; border-radius:28px; position:relative;}
.eb-home .skel-branch-card .skel-img{position:absolute; inset:0; aspect-ratio:auto;}
.eb-home .skel-branch-card .skel-body{position:absolute; right:0; left:0; bottom:0;}

/* ---------- Room cards ---------- */
.eb-home .room-grid{gap:26px;}
.eb-home .room-card{
  padding:10px; border-radius:28px; border:1px solid rgba(15,40,90,.06); background:#fff;
  box-shadow:0 20px 46px -30px rgba(8,25,70,.4);
  transition:transform .5s var(--hx-ease), box-shadow .5s var(--hx-ease);
}
.eb-home .room-card:hover{transform:translateY(-10px); border-color:transparent; box-shadow:0 40px 70px -34px rgba(8,25,70,.5);}
.eb-home .room-gallery{border-radius:20px; aspect-ratio:4/3.05;}
.eb-home .room-gallery .slides img{transition:transform 1.4s var(--hx-ease);}
.eb-home .room-badge{
  top:12px; left:12px; padding:6px 12px; background:rgba(6,18,46,.5); color:#fff;
  border:1px solid rgba(255,255,255,.22); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.eb-home .room-flags{top:20px; right:20px;}
.eb-home .room-body{padding:16px 10px 8px; gap:11px;}
.eb-home .room-title{font-size:19px; color:var(--hx-ink);}
.eb-home .room-meta{flex-wrap:wrap; gap:8px 14px;}
.eb-home .chip{border-radius:999px; background:#F3F6FC; border-color:transparent; padding:6px 11px;}
.eb-home .room-foot{padding-top:14px; border-top:1px solid #EEF2FA;}
.eb-home .price b{font-size:24px;}
.eb-home .room-card .btn-primary{height:44px; padding:0 20px; border-radius:13px;}
.eb-home .skel-room-card{border-radius:28px;}
.eb-home .af-chip{border-radius:999px;}

/* ---------- «لماذا إليت»: bento ---------- */
.wx{padding:84px 28px 40px;}
.wx-inner{max-width:1184px; margin:0 auto;}
.wx-grid{display:grid; grid-template-columns:1.3fr 1fr 1fr; grid-auto-rows:minmax(230px, auto); gap:20px;}
.wx-card{
  position:relative; isolation:isolate; overflow:hidden; display:flex; flex-direction:column; align-items:flex-start;
  padding:28px; border-radius:28px; background:#fff; border:1px solid rgba(15,40,90,.06);
  box-shadow:0 20px 46px -32px rgba(8,25,70,.4);
  transition:transform .5s var(--hx-ease), box-shadow .5s var(--hx-ease);
}
.wx-card::before{
  content:""; position:absolute; inset:0; z-index:-1; opacity:0; transition:opacity .4s var(--hx-ease);
  background:radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%), rgba(30,90,220,.09), transparent 60%);
}
.wx-card:hover{transform:translateY(-6px); box-shadow:0 34px 64px -34px rgba(8,25,70,.5);}
.wx-card:hover::before{opacity:1;}
.wx-ic{
  width:56px; height:56px; margin-bottom:auto; border-radius:18px; display:flex; align-items:center; justify-content:center;
  color:var(--primary); background:linear-gradient(145deg, #EAF1FF, #DDEBFF); transition:transform .5s var(--hx-ease);
}
.wx-ic svg{width:27px; height:27px;}
.wx-card:hover .wx-ic{transform:rotate(-8deg) scale(1.06);}
.wx-card h3{margin:22px 0 8px; color:var(--hx-ink); font-size:19px; font-weight:800;}
.wx-card p{margin:0; color:var(--text-soft); font-size:14px; line-height:1.85;}
.wx-feature{grid-row:span 2; justify-content:flex-end; padding:32px; color:#fff; background:var(--hx-ink); border:none; min-height:480px;}
.wx-feature-img{position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; transition:transform 1.6s var(--hx-ease);}
.wx-feature:hover .wx-feature-img{transform:scale(1.07);}
.wx-feature::after{content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(6,18,46,.05) 0%, rgba(6,18,46,.35) 45%, rgba(6,18,46,.94) 100%);}
.wx-feature::before{display:none;}
.wx-feature h3{color:#fff; font-size:clamp(22px, 2.2vw, 30px); margin:16px 0 10px;}
.wx-feature p{color:#C9D8F5; font-size:15px; max-width:420px;}
.wx-chip{
  display:inline-flex; align-items:center; gap:7px; padding:7px 14px; border-radius:999px; color:#fff; font-size:12.5px; font-weight:800;
  background:rgba(255,255,255,.14); border:1px solid rgba(255,255,255,.24); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.wx-chip svg{width:14px; height:14px;}
.wx-rating{align-items:center; justify-content:center; text-align:center; background:linear-gradient(150deg, #0B1E42, #1E5ADC); border:none; color:#fff;}
.wx-rating::before{background:radial-gradient(380px circle at var(--mx, 50%) var(--my, 50%), rgba(255,255,255,.14), transparent 60%);}
.wx-rating-num{font-size:68px; line-height:1; font-weight:800; background:linear-gradient(180deg, #fff, #9FD8FF); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.wx-rating-stars{display:flex; gap:4px; margin:12px 0 10px; color:#F7B731;}
.wx-rating-stars svg{width:20px; height:20px;}
.wx-rating p{color:#C9D8F5;}

/* ---------- Testimonials: dark ---------- */
.eb-home .testimonials-section.tx{
  max-width:none; margin-top:84px; padding:90px max(28px, calc((100% - 1184px) / 2)) 96px;
  border:none; color:#fff; position:relative; overflow:hidden;
  background:radial-gradient(90% 120% at 100% 0%, #12318A 0%, #0B1E42 46%, #06122E 100%);
}
.tx-head{display:flex; align-items:flex-end; justify-content:space-between; gap:28px; flex-wrap:wrap; margin-bottom:40px;}
.tx-head h2{margin:0 0 10px; color:#fff; font-size:clamp(28px, 3.3vw, 44px); line-height:1.22; font-weight:800;}
.tx-head p{margin:0; color:#AFC3E8; font-size:15.5px; max-width:520px;}
.tx-score{display:flex; align-items:center; gap:18px; padding:18px 22px; border-radius:24px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);}
.tx-score-num{font-size:60px; line-height:1; font-weight:800; background:linear-gradient(180deg, #fff, #9FD8FF); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.tx-score-word{font-size:15px; font-weight:800; margin-bottom:4px;}
.tx-score .rating-stars{display:flex; gap:3px; margin-bottom:6px;}
.tx-score .rating-stars svg{width:17px; height:17px; color:#F7B731;}
.tx-score .rating-badge{display:inline-flex; align-items:center; gap:6px; color:#AFC3E8; font-size:12px; font-weight:700; background:none; padding:0; border:none;}
.eb-home .tx .testimonial-carousel-wrap{max-width:none;}
.eb-home .tx .testimonial-track{gap:20px; padding:6px 2px 10px;}
.eb-home .tx .testimonial-card{
  position:relative; padding:26px 24px 22px; border-radius:26px; color:#E3EBFA;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.1); box-shadow:none;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  transition:transform .45s var(--hx-ease), background .45s var(--hx-ease), border-color .45s var(--hx-ease);
}
.eb-home .tx .testimonial-card:hover{transform:translateY(-6px); background:rgba(255,255,255,.09); border-color:rgba(143,211,255,.32); box-shadow:none;}
.tx-quote{position:absolute; top:22px; left:22px; width:38px; height:38px; color:rgba(143,211,255,.22);}
.eb-home .tx .testimonial-stars{margin-bottom:14px;}
.eb-home .tx .testimonial-stars svg{color:#F7B731;}
.eb-home .tx .testimonial-quote{color:#E3EBFA; font-size:14.5px; line-height:1.95; -webkit-line-clamp:5;}
.eb-home .tx .testimonial-more{color:#8FD3FF; margin:8px 0 16px;}
.eb-home .tx .testimonial-head{margin:auto 0 0; padding-top:16px; border-top:1px solid rgba(255,255,255,.1);}
.eb-home .tx .testimonial-avatar{width:44px; height:44px; border-radius:50%; overflow:hidden; box-shadow:0 0 0 2px rgba(143,211,255,.5); background:rgba(255,255,255,.1);}
.eb-home .tx .testimonial-avatar img{width:100%; height:100%; object-fit:cover; display:block;}
.eb-home .tx .testimonial-author-info b{color:#fff;}
.eb-home .tx .testimonial-author-info span{color:#8FA6D3;}
.eb-home .tx .testimonial-nav{width:46px; height:46px; color:#fff; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18); backdrop-filter:blur(10px);}
.eb-home .tx .testimonial-nav:hover{background:#fff; color:var(--primary-dark); border-color:#fff;}
.eb-home .tx .testimonial-nav.prev{right:-23px;}
.eb-home .tx .testimonial-nav.next{left:-23px;}

/* ---------- Contact panel (#whatsappSection, «تواصل معنا» in the menu) ---------- */
.eb-home .whatsapp-section.cx, .eb-home .cx{max-width:1240px; padding-top:84px; padding-bottom:20px; background:none; border:none;}
.cx-panel{
  position:relative; overflow:hidden; display:grid; grid-template-columns:1.1fr 1fr; align-items:center; gap:36px;
  padding:52px; border-radius:34px; color:#fff;
  background:linear-gradient(135deg, #0E2B73 0%, #1E5ADC 62%, #0FA0E0 100%);
  box-shadow:0 40px 80px -40px rgba(14,43,115,.7);
}
.cx-panel::before{content:""; position:absolute; width:520px; height:520px; left:-180px; top:-240px; border-radius:50%; background:radial-gradient(circle, rgba(255,255,255,.18), transparent 65%); pointer-events:none;}
.cx-copy h2{margin:0 0 12px; color:#fff; font-size:clamp(26px, 2.8vw, 38px); line-height:1.25; font-weight:800;}
.cx-copy p{margin:0; color:#D6E4FF; font-size:15.5px; line-height:1.85; max-width:460px;}
.eb-home .cx .whatsapp-cards{flex-direction:column; align-items:stretch; gap:14px; margin:0;}
.eb-home .cx .whatsapp-card{
  max-width:none; flex:0 0 auto; padding:16px 18px; border-radius:22px; color:#fff;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.22); box-shadow:none;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  transition:transform .4s var(--hx-ease), background .4s var(--hx-ease);
}
.eb-home .cx .whatsapp-card:hover{transform:translateX(-6px); background:rgba(255,255,255,.2); box-shadow:none; border-color:rgba(255,255,255,.35);}
.eb-home .cx .whatsapp-info b{color:#fff; font-size:16px;}
.eb-home .cx .whatsapp-info span{color:#D6E4FF; font-size:13px;}
.eb-home .cx .whatsapp-btn{background:#fff; color:#1FAE55;}
.eb-home .cx .whatsapp-card:hover .whatsapp-btn{background:#25D366; color:#fff;}
.eb-home .cx .skel-wa-card{max-width:none; flex:0 0 auto; height:84px; background:rgba(255,255,255,.12);}

/* ---------- Membership band ---------- */
.mx{max-width:1240px; margin:0 auto; padding:24px 28px 20px;}
.mx-panel{
  position:relative; isolation:isolate; overflow:hidden; display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:36px;
  padding:52px; border-radius:34px; color:#fff; background:#0B1E42;
}
.mx-panel::after{content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(120deg, #06122E 0%, #0B1E42 45%, #1A2F6E 100%);}
.mx-shape{position:absolute; z-index:-1; border-radius:50%; filter:blur(60px); animation:hxFloat 14s ease-in-out infinite alternate;}
.mx-shape-a{width:340px; height:340px; top:-120px; left:8%; background:rgba(199,160,92,.32);}
.mx-shape-b{width:300px; height:300px; bottom:-140px; right:30%; background:rgba(30,90,220,.45); animation-delay:-5s;}
.mx-copy h2{margin:0 0 12px; color:#fff; font-size:clamp(26px, 2.8vw, 38px); line-height:1.25; font-weight:800;}
.mx-copy p{margin:0 0 26px; color:#C9D8F5; font-size:15.5px; line-height:1.85; max-width:480px;}
.mx-btn, .eb-home a.mx-btn{color:var(--hx-ink); background:linear-gradient(135deg, #F6E7C1, #D9B26A); box-shadow:0 18px 40px -16px rgba(217,178,106,.7);}
.mx-btn:hover{box-shadow:0 24px 46px -16px rgba(217,178,106,.85);}
.mx-tiers{display:grid; grid-template-columns:repeat(3, 1fr); gap:14px;}
.mx-tier{
  padding:22px 16px; border-radius:24px; text-align:center;
  background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  transition:transform .45s var(--hx-ease), background .45s var(--hx-ease);
}
.mx-tier:hover{transform:translateY(-6px); background:rgba(255,255,255,.12);}
.mx-tier b{display:block; font-size:36px; line-height:1.1; font-weight:800;}
.mx-tier span{display:block; margin-top:8px; font-size:14px; font-weight:800;}
.mx-tier small{display:block; margin-top:4px; color:#9FB7E3; font-size:12px; font-weight:700;}
.mx-tier.is-silver b{background:linear-gradient(180deg, #FFFFFF, #B8C4D6); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.mx-tier.is-gold b{background:linear-gradient(180deg, #FCE7A8, #D9A63E); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.mx-tier.is-platinum b{background:linear-gradient(180deg, #E8F4FF, #8FD3FF); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}

.eb-home .pub-footer{margin-top:90px;}

/* Laptop screens that are wide but short: a tighter hero so the search box shows sooner. */
@media (min-width:721px) and (max-height:820px){
  .eb-home .hero.hx{padding-top:calc(var(--eb-hdr-space) + 34px); padding-bottom:150px;}
  .eb-home .hero.hx h1.hx-title{font-size:clamp(40px, 5.4vw, 70px); margin-bottom:16px;}
  .eb-home .hero.hx .hx-sub{margin-bottom:24px;}
  .hx-ctas{margin-bottom:32px;}
  .hx-now{bottom:110px;}
}

/* ---------- Narrower screens ---------- */
@media (max-width:1180px){
  .hx-now{display:none;}
}
@media (max-width:1080px){
  .eb-home .search-card{grid-template-columns:1fr 1fr;}
  .eb-home .search-card .btn-primary{grid-column:1 / -1;}
  .wx-grid{grid-template-columns:1fr 1fr;}
  .wx-feature{grid-column:1 / -1; grid-row:auto; min-height:380px;}
  .cx-panel, .mx-panel{grid-template-columns:1fr; padding:40px;}
}
@media (max-width:720px){
  .eb-home .hero.hx{min-height:0; padding:calc(var(--eb-hdr-space) + 44px) 18px 130px; text-align:center;}
  .hx-copy{max-width:none;}
  .eb-home .hero.hx h1.hx-title{font-size:clamp(34px, 10vw, 46px);}
  .eb-home .hero.hx .hx-sub{margin-inline:auto; font-size:15px;}
  .hx-ctas{justify-content:center; margin-bottom:34px;}
  .hx-btn{height:52px; padding:0 22px; font-size:14.5px;}
  .hx-stats{display:grid; grid-template-columns:1fr 1fr; gap:10px; max-width:none;}
  .hx-stat, .hx-stat:first-child{padding:14px 10px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(255,255,255,.06);}
  .hx-stat b{font-size:22px;}
  .hx-shade{background:linear-gradient(180deg, rgba(6,18,46,.5) 0%, rgba(6,18,46,.62) 45%, rgba(6,18,46,.9) 82%, rgba(6,18,46,.97) 100%);}
  .hx-dock{margin-top:-80px; padding:0 14px;}
  .eb-home .search-card{grid-template-columns:1fr; padding:14px; gap:10px; border-radius:22px;}
  .eb-home .section{padding-top:48px; padding-bottom:24px;}
  .eb-home .section-head{align-items:stretch;}
  .eb-home .sx-filter{width:100%;}
  .eb-home .branch-grid{padding:12px 18px 34px;}
  .eb-home .branch-card, .eb-home .skel-branch-card{flex:0 0 78%; scroll-snap-align:center;}
  .eb-home .bc-name{bottom:126px;}
  .wx{padding:56px 18px 24px;}
  .wx-grid{grid-template-columns:1fr; grid-auto-rows:auto;}
  .wx-card{padding:24px;}
  .wx-feature{min-height:340px;}
  .eb-home .testimonials-section.tx{margin-top:56px; padding:60px 18px 64px;}
  .tx-score{width:100%; justify-content:center;}
  .tx-score-num{font-size:50px;}
  .eb-home .cx{padding:56px 18px 16px;}
  .cx-panel, .mx-panel{padding:30px 22px; border-radius:28px; gap:24px;}
  .mx{padding:20px 18px 10px;}
  .mx-tiers{gap:8px;}
  .mx-tier{padding:16px 8px; border-radius:18px;}
  .mx-tier b{font-size:26px;}
  .mx-tier span{font-size:12.5px;}
}

/* Touch screens keep a tapped card "hovered", so nothing lifts or zooms there. */
@media (hover:none){
  .eb-home .branch-card:hover, .eb-home .room-card:hover, .wx-card:hover, .mx-tier:hover, .eb-home .tx .testimonial-card:hover{transform:none;}
  .eb-home .branch-card:hover{box-shadow:0 26px 54px -26px rgba(8,25,70,.6);}
  .eb-home .branch-card.active:hover{box-shadow:0 0 0 3px #fff, 0 0 0 6px var(--primary), 0 26px 54px -26px rgba(8,25,70,.6);}
  .eb-home .branch-card:hover .bc-photo img, .wx-feature:hover .wx-feature-img{transform:none;}
  .eb-home .cx .whatsapp-card:hover{transform:none;}
}

/* Visitors who ask for less motion: everything in place, nothing moving. */
@media (prefers-reduced-motion: reduce){
  .eb-home .hero.hx .hx-sub, .hx-ctas, .hx-stats, .hx-now, .hx-dock{opacity:1; animation:none;}
  .eb-home .hx-title .hx-w, .eb-home .hx-title .hx-w.hx-accent{transform:none; animation:none;}
  .hx-slide.is-on img, .hx-slide.is-out img, .hx-orb, .mx-shape{animation:none;}
  .sx-eyebrow.sx-online i{animation:none; box-shadow:0 0 0 4px rgba(46,224,122,.25);}
  .eb-home .search-card.is-called, .hx-now-label.is-swap b, .hx-now-label.is-swap small{animation:none;}
  .eb-home .branch-card:hover, .eb-home .room-card:hover, .wx-card:hover{transform:none;}
  .hx-slide img{transform:none;}
  .hx-bar.is-on i{animation:none; width:100%;}
  .eb-home .reveal, .eb-home .reveal[data-reveal="zoom"]{opacity:1; transform:none; transition:none;}
}

/* ==========================================================================
   1.0.107: the booking windows (room details, إتمام الحجز, success) in the
   same language as the redesigned page: deeper backdrop, bigger radius,
   glassy chrome, pill controls. Markup and every id untouched.
   ========================================================================== */
.eb-home .overlay{background:rgba(4,12,32,.62); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); padding:22px;}
.eb-home .modal{border-radius:26px; box-shadow:0 60px 120px -40px rgba(4,12,32,.75);}
.eb-home .modal-header{padding:18px 24px; backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); background:rgba(255,255,255,.92); border-bottom-color:#EEF2FA;}
.eb-home .modal-header h3{font-size:19px;}
.eb-home .modal-close{width:38px; height:38px; border-radius:12px; transition:background .25s, color .25s, border-color .25s;}
.eb-home .modal-foot{backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); background:rgba(255,255,255,.92); border-top-color:#EEF2FA;}
.eb-home .modal .btn-primary{border-radius:14px;}
.eb-home .modal .btn-ghost{border-radius:14px;}

/* Room details */
.eb-home .rd-main-image{border-radius:20px; height:400px;}
.eb-home .rd-main-image .gallery-arrow{
  width:38px; height:38px; background:rgba(6,18,46,.45); border:1px solid rgba(255,255,255,.25);
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
}
.eb-home .rd-counter{border-radius:999px;}
.eb-home .rd-thumbs img{border-radius:12px;}
.eb-home .room-branch-tag{
  display:inline-flex; padding:6px 13px; border-radius:999px; background:rgba(30,90,220,.08); color:var(--primary); font-weight:800;
}
.eb-home .rd-amenities{gap:8px;}
.eb-home .book-box{
  border:1px solid rgba(15,40,90,.08); border-radius:22px; padding:20px;
  background:linear-gradient(180deg, #FFFFFF 0%, #F6F9FF 100%);
  box-shadow:0 24px 54px -34px rgba(8,25,70,.5);
}
.eb-home .book-box .price-line b{font-size:26px; color:var(--primary-dark);}
.eb-home .stay-picker{border-radius:15px; border-width:1.5px;}
.eb-home .stepper button{border-radius:10px;}
.eb-home .rd-sticky-bar{backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);}

/* إتمام الحجز */
.eb-home .bf-summary{border-radius:18px;}
.eb-home .bf-summary img{border-radius:14px;}
.eb-home .bf-price{border-radius:18px;}
.eb-home .bk-steps li i{box-shadow:0 6px 14px -6px rgba(30,90,220,.5);}
.eb-home #overlayBookingForm .form-group input,
.eb-home #overlayBookingForm .form-group select,
.eb-home #overlayBookingForm .form-group textarea,
.eb-home #overlayRoomDetail #bookBoxPromo{
  background:#F3F6FC; border:1.5px solid transparent; border-radius:13px;
  transition:border-color .25s, background .25s, box-shadow .25s;
}
.eb-home #overlayBookingForm .form-group input:hover,
.eb-home #overlayBookingForm .form-group select:hover,
.eb-home #overlayBookingForm .form-group textarea:hover{border-color:#D3E0FA;}
.eb-home #overlayBookingForm .form-group input:focus,
.eb-home #overlayBookingForm .form-group select:focus,
.eb-home #overlayBookingForm .form-group textarea:focus,
.eb-home #overlayRoomDetail #bookBoxPromo:focus{
  outline:none; border-color:var(--primary); background:#fff; box-shadow:0 0 0 4px rgba(30,90,220,.1);
}
.eb-home .bf-assure{border-radius:14px;}

/* Success */
.eb-home .success-action{border-radius:14px; transition:transform .3s var(--hx-ease), box-shadow .3s var(--hx-ease);}
.eb-home .success-action:hover{transform:translateY(-2px);}
.eb-home .success-wa-box{border-radius:18px;}
@media (max-width:720px){
  .eb-home .overlay{padding:0;}
  .eb-home .modal{border-radius:22px 22px 0 0; align-self:flex-end; max-height:94vh;}
  .eb-home .rd-main-image{height:260px; border-radius:16px;}
}

/* ==========================================================================
   1.0.108: تابي. Payment cards in إتمام الحجز, Tabby's snippets, the window
   shown on the way to / back from Tabby, and the "paid" line on success.
   ========================================================================== */
.eb-home .pay-opts{display:grid; gap:10px;}
.eb-home .pay-opt{
  position:relative; display:flex; align-items:center; gap:12px; padding:13px 14px; cursor:pointer;
  background:#F6F8FD; border:1.5px solid transparent; border-radius:16px;
  transition:border-color .25s, background .25s, box-shadow .3s var(--hx-ease), transform .3s var(--hx-ease), opacity .25s;
}
.eb-home .pay-opt:hover{border-color:#D3E0FA; transform:translateY(-1px);}
.eb-home .pay-opt input{position:absolute; opacity:0; pointer-events:none;}
.eb-home .pay-opt-ic{
  width:42px; height:42px; flex:none; border-radius:13px; display:flex; align-items:center; justify-content:center;
  background:#fff; color:var(--primary); box-shadow:0 6px 16px -10px rgba(8,25,70,.45);
}
.eb-home .pay-opt-ic svg{width:21px; height:21px;}
.eb-home .pay-opt-logo{width:66px; background:transparent; box-shadow:none;}
.eb-home .pay-opt-logo img{width:58px; height:auto; display:block; border-radius:7px;}
.eb-home .pay-opt-text{display:flex; flex-direction:column; gap:2px; min-width:0; flex:1;}
.eb-home .pay-opt-text b{font-size:14px; font-weight:800; color:var(--text);}
.eb-home .pay-opt-text small{font-size:12px; color:var(--text-soft); font-weight:600;}
.eb-home .pay-opt-tick{
  width:22px; height:22px; flex:none; border-radius:50%; border:2px solid #C9D5EC; background:#fff;
  transition:border-color .25s, background .25s, box-shadow .25s;
}
.eb-home .pay-opt.is-active{background:#fff; border-color:var(--primary); box-shadow:0 14px 30px -20px rgba(30,90,220,.55);}
.eb-home .pay-opt.is-active .pay-opt-tick{border-color:var(--primary); background:var(--primary); box-shadow:inset 0 0 0 4px #fff;}
.eb-home .pay-opt-tabby.is-active{border-color:#1D1D1B; box-shadow:0 14px 30px -20px rgba(0,0,0,.45);}
.eb-home .pay-opt-tabby.is-active .pay-opt-tick{border-color:#1D1D1B; background:#3BFF9D; box-shadow:inset 0 0 0 4px #fff;}
.eb-home .pay-opt.is-off{opacity:.55; cursor:not-allowed; transform:none;}
.eb-home .pay-opt.is-off:hover{border-color:transparent;}
.eb-home .pay-opts .pay-opt{animation:payIn .5s var(--hx-ease) both;}
.eb-home .pay-opts .pay-opt:nth-child(2){animation-delay:.06s;}
.eb-home .pay-opts .pay-opt:nth-child(3){animation-delay:.12s;}
@keyframes payIn{from{opacity:0; transform:translateY(8px);}to{opacity:1; transform:none;}}
.eb-home .bf-tabby-note{
  margin-top:10px; padding:11px 14px; border-radius:13px; font-size:12.5px; line-height:1.8; font-weight:600;
  background:#FFF4F2; color:#B42318; border:1px solid #FAD7D2; animation:payIn .35s var(--hx-ease) both;
}
.eb-home .bf-tabby-note.is-coupon{background:#FFF8E6; color:#8A5A00; border-color:#F6E2B3;}
.eb-home .bf-tabby-card{margin-top:10px; min-height:20px; animation:payIn .4s var(--hx-ease) both;}
.eb-home .rd-tabby-promo{margin:0 0 12px; min-height:20px;}
.eb-home .bb-coupon-note{display:block; margin-top:3px; color:#8A5A00; font-weight:700;}
.eb-home #btnConfirmBooking.is-tabby{background:#1D1D1B; border-color:#1D1D1B; color:#fff; box-shadow:0 14px 30px -16px rgba(0,0,0,.6);}
.eb-home #btnConfirmBooking.is-tabby:hover{background:#000;}
.eb-home .success-paid{
  display:inline-flex; align-items:center; gap:8px; margin:0 0 14px; padding:7px 14px 7px 10px; border-radius:999px;
  background:#E9FFF1; color:#0B7A43; font-size:13px; font-weight:800; border:1px solid #BDF5D2;
}
.eb-home .success-paid[hidden]{display:none;}
.eb-home .success-paid img{border-radius:5px; display:block;}
.eb-home .tb-return .modal-body{padding:30px 28px 26px; text-align:center;}
.eb-home .tb-return-logo{display:block; margin:0 auto 18px; border-radius:8px;}
.eb-home .tb-return h3{margin:14px 0 8px; font-size:19px;}
.eb-home .tb-return p{margin:0 auto; color:var(--text-soft); font-size:14px; line-height:1.9; max-width:340px;}
.eb-home .tb-return-actions{display:flex; flex-direction:column; gap:10px; margin-top:22px;}
.eb-home .tb-spin{
  display:block; width:46px; height:46px; margin:0 auto; border-radius:50%;
  border:4px solid #E6ECF7; border-top-color:#1D1D1B; border-right-color:#3BFF9D; animation:tbSpin .85s linear infinite;
}
@keyframes tbSpin{to{transform:rotate(360deg);}}
.eb-home .tb-ic{display:flex; width:56px; height:56px; margin:0 auto; border-radius:50%; align-items:center; justify-content:center; animation:tbPop .45s var(--hx-ease) both;}
.eb-home .tb-ic svg{width:28px; height:28px;}
.eb-home .tb-ic.is-info{background:#EEF3FD; color:var(--primary);}
.eb-home .tb-ic.is-stop{background:#FFF1F0; color:#D92D20;}
@keyframes tbPop{from{transform:scale(.6); opacity:0;}to{transform:none; opacity:1;}}
@media (prefers-reduced-motion:reduce){
  .eb-home .pay-opts .pay-opt, .eb-home .bf-tabby-note, .eb-home .bf-tabby-card, .eb-home .tb-ic{animation:none;}
  .eb-home .tb-spin{animation-duration:2.4s;}
}

/* 1.0.110: new order under the branches: membership, contact, why us, reviews */
.mx{padding-top:84px;}
.eb-home .whatsapp-section.cx, .eb-home .cx{padding-top:20px;}
@media (max-width:720px){
  .mx{padding-top:56px;}
  .eb-home .cx{padding-top:14px;}
}

/* ==========================================================================
   1.0.116: the promo bar, modern. Deep navy glass, a light sheen moving
   across, a pulsing «عرض حصري» badge and the code as a gold chip.
   ========================================================================== */
.eb-home .eb-promo-bar.pb{
  position:relative; overflow:hidden; isolation:isolate; color:#fff;
  background:linear-gradient(100deg, #06122E 0%, #0B2A6B 45%, #123C9C 75%, #0B2A6B 100%);
  border-bottom:1px solid rgba(255,255,255,.08);
  animation:pbIn .6s var(--hx-ease) both;
}
.eb-home .eb-promo-bar.pb::before{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:radial-gradient(60% 140% at 85% 50%, rgba(0,168,232,.28), transparent 60%), radial-gradient(40% 120% at 10% 50%, rgba(217,178,106,.18), transparent 60%);
}
.eb-home .pb-sheen{
  position:absolute; top:0; bottom:0; width:38%; left:-40%; z-index:-1; pointer-events:none;
  background:linear-gradient(100deg, transparent, rgba(255,255,255,.14), transparent);
  transform:skewX(-18deg); animation:pbSheen 6.5s ease-in-out infinite;
}
@keyframes pbSheen{0%{left:-40%;}55%,100%{left:120%;}}
.eb-home .eb-promo-bar.pb::after{content:""; position:absolute; left:0; right:0; bottom:0; height:1px; background:linear-gradient(90deg, transparent, rgba(217,178,106,.75), rgba(0,168,232,.6), transparent); pointer-events:none;}
@keyframes pbIn{from{transform:translateY(-100%); opacity:0;}to{transform:none; opacity:1;}}
.eb-home .eb-promo-bar.pb.is-out{transition:transform .3s var(--hx-ease), opacity .3s; transform:translateY(-100%); opacity:0;}
.eb-home .pb-inner{
  max-width:1240px; margin:0 auto; min-height:46px; padding:7px 56px; position:relative;
  display:flex; align-items:center; justify-content:center; gap:12px; flex-wrap:wrap; text-align:center;
}
.eb-home .pb-badge{
  display:inline-flex; align-items:center; gap:7px; flex:none; padding:5px 11px; border-radius:999px;
  background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.18); font-size:11.5px; font-weight:800; color:#F6E7C1;
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
}
.eb-home .pb-badge i{width:7px; height:7px; border-radius:50%; background:#3BFF9D; box-shadow:0 0 0 0 rgba(59,255,157,.6); animation:pbPulse 1.8s infinite;}
@keyframes pbPulse{70%{box-shadow:0 0 0 7px rgba(59,255,157,0);}100%{box-shadow:0 0 0 0 rgba(59,255,157,0);}}
.eb-home .pb-msg{display:flex; align-items:center; justify-content:center; gap:9px; flex-wrap:wrap; margin:0; font-size:13.5px; font-weight:700; line-height:1.6; color:#E3ECFF;}
.eb-home .pb-code{
  display:inline-flex; align-items:center; justify-content:center; flex:none; width:auto; min-width:0; margin:0;
  padding:5px 12px; border-radius:9px; cursor:pointer; font-family:inherit; line-height:1; text-align:center;
  -webkit-appearance:none; appearance:none; -webkit-tap-highlight-color:transparent; user-select:none;
  color:#0B1E42; background:linear-gradient(135deg, #F6E7C1, #D9B26A); border:none;
  box-shadow:0 8px 20px -10px rgba(217,178,106,.9), inset 0 0 0 1px rgba(255,255,255,.4);
  transition:transform .25s var(--hx-ease), box-shadow .25s var(--hx-ease);
}
.eb-home .pb-code:hover{transform:translateY(-1px); box-shadow:0 12px 24px -10px rgba(217,178,106,1), inset 0 0 0 1px rgba(255,255,255,.5);}
/* 1.0.119: the code (Latin letters and digits) in the device's own UI font,
   whose metrics are balanced on every phone (Tajawal's are built around Arabic
   and put Latin capitals high on iPhones), cropped to the capitals where the
   browser can, so equal padding means equal space above and below. */
.eb-home .pb-code b{
  display:block; font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
  font-size:14px; font-weight:800; line-height:1; letter-spacing:1.5px; margin-right:-1.5px;
}
@supports (text-box: trim-both cap alphabetic){
  .eb-home .pb-code{padding:7px 12px;}
  .eb-home .pb-code b{text-box:trim-both cap alphabetic;}
}
.eb-home .pb-code:focus-visible{outline:2px solid #fff; outline-offset:2px;}
.eb-home .pb-code-act{display:inline-flex; align-items:center; gap:4px; padding:3px 8px; border-radius:8px; background:rgba(11,30,66,.12); font-size:11.5px; font-weight:800;}
.eb-home .pb-code-act svg{width:13px; height:13px;}
.eb-home .pb-code-act em{font-style:normal;}
.eb-home .pb-code.is-copied{box-shadow:0 0 0 3px rgba(59,255,157,.55), inset 0 0 0 1px rgba(255,255,255,.5);}
.eb-home a.pb-link{display:inline-flex; align-items:center; gap:3px; color:#fff; font-size:12.5px; font-weight:800; text-decoration:none; opacity:.85;}
.eb-home a.pb-link:hover{opacity:1;}
.eb-home a.pb-link svg{width:14px; height:14px;}
.eb-home .pb-close{
  position:absolute; inset-inline-end:14px; top:50%; transform:translateY(-50%);
  width:28px; height:28px; border-radius:50%; border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.08);
  color:#fff; display:flex; align-items:center; justify-content:center; cursor:pointer;
  transition:background .2s, transform .3s var(--hx-ease);
}
.eb-home .pb-close:hover{background:rgba(255,255,255,.2); transform:translateY(-50%) rotate(90deg);}
@media (max-width:720px){
  .eb-home .pb-inner{padding:8px 14px; padding-inline-end:50px; gap:8px; min-height:0;}
  .eb-home .pb-close{top:12px; transform:none;}
  .eb-home .pb-close:hover{transform:rotate(90deg);}
  .eb-home .pb-badge{display:none;}
  .eb-home .pb-msg{font-size:12px; gap:6px; line-height:1.7;}
  .eb-home .pb-code b{font-size:13px;}
  .eb-home .pb-code{padding-top:5px; padding-bottom:5px;}
  @supports (text-box: trim-both cap alphabetic){ .eb-home .pb-code{padding-top:7px; padding-bottom:7px;} }
}
@media (prefers-reduced-motion:reduce){
  .eb-home .eb-promo-bar.pb, .eb-home .pb-sheen, .eb-home .pb-badge i{animation:none;}
  .eb-home .pb-sheen{display:none;}
}

/* 1.0.124: تابي, a quiet line under the search and a tile in «لماذا يختار ضيوفنا إليت؟» */
.eb-home .hx-tabby{display:flex; align-items:center; justify-content:center; gap:10px; width:fit-content; max-width:100%; margin:14px auto 0; padding:8px 16px 8px 18px; border-radius:999px; background:#fff; border:1px solid #E1E8F5; box-shadow:0 12px 28px -22px rgba(8,25,70,.5); color:var(--text-soft); font-size:13.5px; font-weight:700; line-height:1.6;}
.eb-home .hx-tabby img{width:46px; height:auto; flex:none; border-radius:5px;}
.eb-home .hx-tabby b{color:var(--hx-ink, #0B1E42); font-weight:800;}
.wx-tabby{gap:4px;}
.wx-tabby::after{content:""; position:absolute; inset:auto -40px -60px auto; width:180px; height:180px; border-radius:50%; background:radial-gradient(circle, rgba(108,255,147,.28), transparent 70%); pointer-events:none;}
.wx-tabby-logo{width:92px; height:auto; border-radius:10px; box-shadow:0 14px 28px -14px rgba(0,0,0,.55); margin-bottom:12px;}
.wx-tabby-num{font-size:20px; font-weight:800; color:#C9D8F5;}
.wx-tabby-num small{font-size:18px; color:#C9D8F5;}
.wx-tabby-num span{font-size:64px; line-height:1; margin-inline-end:4px; background:linear-gradient(180deg, #fff, #9FFFC0); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;}
.wx-card.wx-tabby h3{margin:6px 0 6px; color:#fff;}
@media (max-width:640px){
  .eb-home .hx-tabby{font-size:12.5px; padding:7px 12px; gap:8px; text-align:right;}
  .eb-home .hx-tabby img{width:40px;}
}

/* 1.0.128: both lead to the instalments page (/tabby/) */
.eb-home a.hx-tabby{text-decoration:none; transition:border-color .3s, box-shadow .3s, transform .3s;}
.eb-home a.hx-tabby:hover{border-color:#BFEFD0; transform:translateY(-1px); box-shadow:0 14px 30px -20px rgba(8,25,70,.55);}
.eb-home .hx-tabby i{font-style:normal; color:var(--primary); font-weight:900;}
.eb-public a.wx-tabby{color:#fff; text-decoration:none;}
.wx-tabby-more{position:relative; z-index:1; margin-top:12px; font-size:13px; font-weight:800; color:#9DFFB8;}
.wx-tabby:hover .wx-tabby-more{text-decoration:underline;}
