/* Khattab vNext.5 — unified premium branch pages. Loaded on branch pages only. */
body.khattab-branch-menu-page{
  --kh-red:#b80f1b;--kh-red-2:#8e0912;--kh-gold:#d9a62e;--kh-cream:#fff8e9;--kh-ink:#2d160d;
  background:linear-gradient(180deg,#fffaf0 0%,#f7eedc 100%);
}
body.khattab-branch-menu-page .elementor-element{--widgets-spacing:0px 0px}

body.khattab-branch-menu-page .khattab-premium-branch-hero{
  position:relative!important;isolation:isolate;display:grid!important;place-items:center;
  min-height:clamp(330px,48vw,560px)!important;margin:0!important;padding:clamp(72px,8vw,110px) 18px 46px!important;
  overflow:hidden;background-image:var(--kh-branch-hero)!important;background-size:cover!important;background-position:center!important;
  border:0!important;border-radius:0 0 34px 34px!important;box-shadow:0 24px 70px rgba(57,24,8,.18)!important;
}
body.khattab-branch-menu-page .khattab-premium-branch-hero::before{
  content:"";position:absolute;inset:0;z-index:-3;background-image:var(--kh-branch-hero);background-size:cover;background-position:center;
  transform:scale(1.015);filter:saturate(1.03) contrast(1.02);
}
body.khattab-branch-menu-page .branch-hero-overlay{
  display:block!important;position:absolute!important;inset:0!important;z-index:-2!important;
  background:linear-gradient(180deg,rgba(24,7,5,.42),rgba(54,10,7,.60) 55%,rgba(58,18,8,.76))!important;
}
body.khattab-branch-menu-page .kh-branch-pattern{
  position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.34;
  background:radial-gradient(circle at 50% 0%,rgba(255,220,136,.3),transparent 42%),
    repeating-linear-gradient(45deg,transparent 0 34px,rgba(255,216,112,.055) 34px 35px);
}
body.khattab-branch-menu-page .branch-hero-content{
  width:min(960px,100%)!important;margin:auto!important;padding:clamp(22px,4vw,38px)!important;text-align:center!important;
  background:linear-gradient(145deg,rgba(43,12,8,.52),rgba(93,22,13,.32))!important;
  border:1px solid rgba(255,220,145,.48)!important;border-radius:28px!important;
  box-shadow:0 25px 70px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.18)!important;
  backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);color:#fff!important;
}
.kh-branch-kicker{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 18px;border:1px solid rgba(255,215,114,.58);border-radius:999px;background:rgba(255,248,231,.12);color:#ffe5a5;font-size:12px;font-weight:800;letter-spacing:.1px}
.kh-branch-main-title{margin:14px 0 5px!important;color:#fff!important;font-family:'Cairo',sans-serif!important;font-size:clamp(27px,5vw,52px)!important;font-weight:800!important;line-height:1.2!important;text-shadow:0 4px 22px rgba(0,0,0,.34)}
.kh-branch-tagline{margin:0 auto 20px!important;color:#fff1d0!important;font-size:clamp(12px,1.7vw,16px)!important;font-weight:700!important;line-height:1.8!important}
body.khattab-branch-menu-page .branch-info-wrapper{display:grid!important;gap:10px!important;justify-items:center!important;color:#fff!important}
body.khattab-branch-menu-page .branch-address,body.khattab-branch-menu-page .branch-hours{display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;color:#fff!important;font-size:clamp(12px,1.5vw,15px)!important;font-weight:700!important;line-height:1.7!important}
body.khattab-branch-menu-page .branch-hours-wrapper{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;flex-wrap:wrap!important}
body.khattab-branch-menu-page .branch-status-wrapper{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:6px 11px!important;border-radius:999px!important;background:rgba(255,255,255,.12)!important;color:#fff!important;font-size:12px!important;font-weight:800!important}
body.khattab-branch-menu-page .branch-status-badge{width:8px!important;height:8px!important;border-radius:50%!important;background:#22c55e!important;box-shadow:0 0 0 4px rgba(34,197,94,.15)!important}
body.khattab-branch-menu-page .branch-hero-full.closed .branch-status-badge{background:#ff4d5a!important;box-shadow:0 0 0 4px rgba(255,77,90,.15)!important}
body.khattab-branch-menu-page .branch-hero-full.seasonal .branch-status-badge{background:#e6ad25!important;box-shadow:0 0 0 4px rgba(230,173,37,.15)!important}
body.khattab-branch-menu-page .branch-buttons{display:flex!important;justify-content:center!important;gap:10px!important;flex-wrap:wrap!important;margin-top:18px!important}
body.khattab-branch-menu-page .branch-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-height:44px!important;padding:10px 20px!important;border:1px solid rgba(255,225,151,.52)!important;border-radius:14px!important;background:rgba(255,249,235,.94)!important;color:#761018!important;font-family:'Cairo',sans-serif!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important;box-shadow:0 10px 24px rgba(0,0,0,.15)!important;transition:transform .22s ease,box-shadow .22s ease,background .22s ease!important}
body.khattab-branch-menu-page .branch-btn:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(0,0,0,.22)!important;background:#fff!important}
body.khattab-branch-menu-page .branch-btn-secondary{background:linear-gradient(135deg,#b7101c,#8d0811)!important;color:#fff!important;border-color:rgba(255,218,123,.55)!important}
body.khattab-branch-menu-page .branch-google-maps-icon img{display:block;width:20px;height:20px}

/* Premium menu heading — one line on every phone width. */
body.khattab-branch-menu-page .menu-title-wrapper{
  position:relative!important;width:min(940px,calc(100% - 24px))!important;margin:24px auto 22px!important;padding:25px 16px 24px!important;
  overflow:hidden!important;text-align:center!important;background:linear-gradient(145deg,#fffaf0,#f8ecd6)!important;
  border:1px solid rgba(208,158,47,.35)!important;border-radius:24px!important;box-shadow:0 16px 46px rgba(77,38,9,.09)!important;
}
body.khattab-branch-menu-page .menu-title-wrapper::before{content:""!important;display:block!important;position:absolute!important;inset:7px!important;border:1px solid rgba(184,15,27,.08)!important;border-radius:18px!important;pointer-events:none!important;background:radial-gradient(circle at 50% -30%,rgba(216,164,45,.15),transparent 46%)!important}
body.khattab-branch-menu-page .menu-title-wrapper>*{position:relative;z-index:1}
body.khattab-branch-menu-page .menu-title-eyebrow{display:inline-flex!important;align-items:center;justify-content:center;min-height:30px;margin-bottom:10px;padding:5px 15px;border:1px solid rgba(207,155,38,.32);border-radius:999px;background:#fff9ec;color:#a3131c;font-size:11px;font-weight:800}
body.khattab-branch-menu-page .menu-title-wrapper .menu-title{
  display:block!important;width:100%!important;margin:0!important;padding:0 2px 11px!important;color:var(--kh-ink)!important;
  font-family:'Cairo',sans-serif!important;font-size:clamp(14px,4.25vw,34px)!important;font-weight:800!important;line-height:1.35!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;letter-spacing:-.35px!important;
}
body.khattab-branch-menu-page .menu-title-wrapper .menu-title .highlight{display:inline!important;margin:0!important;padding:0!important;color:var(--kh-red)!important;background:none!important;border:0!important;white-space:inherit!important}
body.khattab-branch-menu-page .menu-title-wrapper .menu-title::after{content:""!important;display:block!important;width:76px!important;height:3px!important;margin:11px auto 0!important;border-radius:99px!important;background:linear-gradient(90deg,transparent,var(--kh-gold),var(--kh-red),var(--kh-gold),transparent)!important}
body.khattab-branch-menu-page .menu-title-subtitle{display:block!important;margin:0 auto!important;max-width:640px!important;padding:0 8px!important;color:#6c5747!important;font-size:12.5px!important;font-weight:600!important;line-height:1.8!important}

/* Reveal language inspired by About Us but with transform/opacity only. */
.kh-reveal{opacity:0;transform:translateY(22px);transition:opacity .62s ease,transform .62s cubic-bezier(.2,.7,.2,1)}
.kh-reveal.kh-inview{opacity:1;transform:none}

@media(max-width:600px){
  body.khattab-branch-menu-page .khattab-premium-branch-hero{min-height:360px!important;padding:62px 10px 28px!important;border-radius:0 0 24px 24px!important;background-position:center!important}
  body.khattab-branch-menu-page .branch-hero-content{padding:20px 11px!important;border-radius:21px!important;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
  .kh-branch-main-title{font-size:clamp(25px,8vw,34px)!important}
  .kh-branch-tagline{font-size:11.5px!important;margin-bottom:14px!important}
  body.khattab-branch-menu-page .branch-address,body.khattab-branch-menu-page .branch-hours{font-size:11.5px!important}
  body.khattab-branch-menu-page .branch-buttons{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;gap:8px!important}
  body.khattab-branch-menu-page .branch-btn{min-width:0!important;width:100%!important;padding:9px 8px!important;font-size:12px!important}
  body.khattab-branch-menu-page .menu-title-wrapper{width:calc(100% - 14px)!important;margin:17px auto 18px!important;padding:20px 6px 19px!important;border-radius:20px!important}
  body.khattab-branch-menu-page .menu-title-wrapper .menu-title{font-size:clamp(13px,4.12vw,20px)!important;letter-spacing:-.5px!important;padding-inline:0!important}
  body.khattab-branch-menu-page .menu-title-subtitle{font-size:11px!important;line-height:1.7!important}
  body.khattab-branch-menu-page .menu-title-eyebrow{font-size:10.5px!important;min-height:28px!important;margin-bottom:8px!important}
}
@media(max-width:360px){
  body.khattab-branch-menu-page .menu-title-wrapper .menu-title{font-size:12.8px!important;letter-spacing:-.65px!important}
  body.khattab-branch-menu-page .menu-title-subtitle{font-size:10.5px!important}
}
@media(prefers-reduced-motion:reduce){.kh-reveal{opacity:1!important;transform:none!important;transition:none!important}body.khattab-branch-menu-page .branch-btn{transition:none!important}}

/* =========================================================
 * vNext.10 — compact unified branch hero
 * One branch name, no duplicate heading/tagline, no wrapping on narrow screens.
 * ========================================================= */
body.khattab-branch-menu-page .khattab-premium-branch-hero{
  min-height:clamp(300px,42vw,500px)!important;
  padding:clamp(64px,7vw,94px) 14px 36px!important;
}
body.khattab-branch-menu-page .branch-hero-content{
  width:min(900px,100%)!important;
  padding:clamp(20px,3.4vw,34px)!important;
}
body.khattab-branch-menu-page .kh-branch-kicker{
  display:inline-flex!important;
  max-width:100%!important;
  min-height:40px!important;
  margin:0 auto 16px!important;
  padding:8px 22px!important;
  background:linear-gradient(135deg,rgba(255,250,236,.97),rgba(255,239,196,.94))!important;
  border:1px solid rgba(234,187,67,.64)!important;
  color:#8f1116!important;
  font-family:'Cairo',sans-serif!important;
  font-size:clamp(15px,2.3vw,22px)!important;
  font-weight:1000!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  box-shadow:0 12px 28px rgba(29,8,5,.16)!important;
}
body.khattab-branch-menu-page .kh-branch-main-title,
body.khattab-branch-menu-page .kh-branch-tagline{display:none!important;}
body.khattab-branch-menu-page .kh-branch-nowrap{
  white-space:nowrap!important;
  max-width:100%!important;
  min-width:0!important;
}
body.khattab-branch-menu-page .kh-branch-nowrap>span:last-child{white-space:nowrap!important;}
body.khattab-branch-menu-page .branch-address,
body.khattab-branch-menu-page .branch-hours{
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.khattab-branch-menu-page .menu-title-eyebrow{display:none!important;}
body.khattab-branch-menu-page .menu-title-wrapper{padding-top:20px!important;}
@media(max-width:600px){
  body.khattab-branch-menu-page .khattab-premium-branch-hero{min-height:330px!important;padding:54px 8px 24px!important;}
  body.khattab-branch-menu-page .branch-hero-content{padding:17px 8px!important;}
  body.khattab-branch-menu-page .kh-branch-kicker{font-size:clamp(14px,5.2vw,18px)!important;padding:7px 16px!important;margin-bottom:13px!important;}
  body.khattab-branch-menu-page .branch-address,
  body.khattab-branch-menu-page .branch-hours{font-size:11px!important;line-height:1.45!important;}
  body.khattab-branch-menu-page .branch-hours-wrapper{gap:8px!important;}
  body.khattab-branch-menu-page .branch-status-wrapper{font-size:10.5px!important;padding:5px 8px!important;}
  body.khattab-branch-menu-page .menu-title-wrapper{padding-top:18px!important;}
}


/* =========================================================
 * vNext.11 — branch hero spacing + one-line hours/status
 * Keep social/header area clear and keep operating state beside hours.
 * ========================================================= */
body.khattab-branch-menu-page .kh-branch-kicker{
  margin-top:clamp(34px,4vw,54px)!important;
  margin-bottom:14px!important;
}
body.khattab-branch-menu-page .branch-hours-wrapper{
  display:inline-flex!important;
  width:auto!important;
  max-width:100%!important;
  flex-wrap:nowrap!important;
  white-space:nowrap!important;
  gap:8px!important;
  padding:0!important;
}
body.khattab-branch-menu-page .branch-hours{
  width:auto!important;
  flex:0 1 auto!important;
  min-width:0!important;
  white-space:nowrap!important;
}
body.khattab-branch-menu-page .branch-status-wrapper{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
@media(max-width:600px){
  body.khattab-branch-menu-page .khattab-premium-branch-hero{
    min-height:390px!important;
    padding-top:64px!important;
  }
  body.khattab-branch-menu-page .branch-hero-content{
    padding-top:20px!important;
  }
  body.khattab-branch-menu-page .kh-branch-kicker{
    margin-top:58px!important;
    margin-bottom:12px!important;
  }
  body.khattab-branch-menu-page .branch-hours-wrapper{
    gap:6px!important;
    transform:none!important;
  }
  body.khattab-branch-menu-page .branch-hours{
    font-size:clamp(9.4px,2.78vw,11px)!important;
    gap:4px!important;
    line-height:1.25!important;
  }
  body.khattab-branch-menu-page .branch-status-wrapper{
    font-size:clamp(9.2px,2.65vw,10.5px)!important;
    padding:4px 7px!important;
    gap:5px!important;
  }
  body.khattab-branch-menu-page .branch-status-badge{
    width:7px!important;height:7px!important;
    box-shadow:0 0 0 3px rgba(34,197,94,.15)!important;
  }
}
@media(max-width:360px){
  body.khattab-branch-menu-page .branch-hours{font-size:9px!important;}
  body.khattab-branch-menu-page .branch-status-wrapper{font-size:9px!important;padding:4px 6px!important;}
}

/* vNext.12 — lower the premium frame top edge below the social/header zone, without moving content. */
body.khattab-branch-menu-page .branch-hero-content{
  position:relative!important;
  border-color:transparent!important;
}
body.khattab-branch-menu-page .branch-hero-content::after{
  content:"";position:absolute;z-index:0;pointer-events:none;left:0;right:0;bottom:0;top:92px;
  border:1px solid rgba(255,220,145,.48);border-radius:24px 24px 28px 28px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}
body.khattab-branch-menu-page .branch-hero-content>*{position:relative;z-index:1;}
@media(max-width:600px){
  body.khattab-branch-menu-page .branch-hero-content::after{top:82px;border-radius:20px 20px 21px 21px;}
}

/* vNext.12 — keep the branch status pulse perfectly circular at every breakpoint. */
body.khattab-branch-menu-page .branch-status-badge{position:relative!important;aspect-ratio:1/1!important;flex:0 0 auto!important;}
body.khattab-branch-menu-page .branch-status-badge::after{
  inset:auto!important;left:50%!important;top:50%!important;width:20px!important;height:20px!important;margin:-10px 0 0 -10px!important;border-radius:50%!important;box-sizing:border-box!important;
}
@keyframes khattabHeroOpenPulse{
  0%{transform:scale(.72);opacity:.78}
  75%,100%{transform:scale(1.65);opacity:0}
}

/* =========================================================
 * vNext.13 — frosted hero panel fully contained inside border.
 * The glass begins below the social/header zone and never protrudes.
 * ========================================================= */
body.khattab-branch-menu-page .branch-hero-content{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  overflow:hidden!important;
}
body.khattab-branch-menu-page .branch-hero-content::before,
body.khattab-branch-menu-page .branch-hero-content::after{
  left:8px!important;right:8px!important;bottom:8px!important;top:96px!important;border-radius:22px!important;box-sizing:border-box!important;
}
body.khattab-branch-menu-page .branch-hero-content::before{
  content:""!important;position:absolute!important;z-index:0!important;pointer-events:none!important;
  background:linear-gradient(145deg,rgba(43,12,8,.50),rgba(93,22,13,.30))!important;
  backdrop-filter:blur(9px)!important;-webkit-backdrop-filter:blur(9px)!important;
  box-shadow:0 22px 58px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.14)!important;
}
body.khattab-branch-menu-page .branch-hero-content::after{
  border:1px solid rgba(255,220,145,.48)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14)!important;
}
body.khattab-branch-menu-page .branch-hero-content>*{position:relative!important;z-index:1!important}
@media(max-width:600px){
  body.khattab-branch-menu-page .branch-hero-content::before,
  body.khattab-branch-menu-page .branch-hero-content::after{left:6px!important;right:6px!important;bottom:6px!important;top:86px!important;border-radius:18px!important}
}


/* =========================================================
   vNext.19 — branch/menu hero collision guard + stacking.
   Applies to every canonical branch-menu page without changing
   established colors/content/actions.
   ========================================================= */
body.khattab-branch-menu-page .khattab-premium-branch-hero{
  --kh-hero-top-safe:clamp(190px,16vw,238px);
  min-height:clamp(520px,50vw,640px)!important;
  padding:var(--kh-hero-top-safe) 18px 44px!important;
  align-items:start!important;
  overflow:hidden!important;
}
body.khattab-branch-menu-page .branch-hero-content{
  position:relative!important;
  z-index:99!important;
  width:min(884px,calc(100% - 34px))!important;
  margin:0 auto!important;
  padding:clamp(18px,2.2vw,25px)!important;
  transform:none!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
/* The branch metadata is intentionally 99; global logo/social remain above. */
body.khattab-branch-menu-page .branch-info-wrapper,
body.khattab-branch-menu-page .branch-hours-wrapper,
body.khattab-branch-menu-page .branch-buttons,
body.khattab-branch-menu-page .kh-branch-kicker{
  position:relative!important;
  z-index:99!important;
}
/* Protect common Elementor/global header/social layers from being covered by hero metadata. */
body.khattab-branch-menu-page :where(header,.site-header,.elementor-location-header,[data-elementor-type="header"],.khattab-socials,.social-icons,.elementor-social-icons-wrapper){
  position:relative;
  z-index:130!important;
}
body.khattab-branch-menu-page :where(header,.site-header,.elementor-location-header,[data-elementor-type="header"]) :where(img,.custom-logo,.site-logo-img,.elementor-social-icon,a){
  position:relative;
  z-index:131!important;
}
body.khattab-branch-menu-page .branch-address,
body.khattab-branch-menu-page .branch-hours{
  max-width:100%!important;
  min-width:0!important;
}
body.khattab-branch-menu-page .branch-hours-wrapper{
  gap:10px 14px!important;
  flex-wrap:wrap!important;
}
body.khattab-branch-menu-page .branch-status-wrapper{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
body.khattab-branch-menu-page .branch-status-badge,
body.khattab-branch-menu-page .branch-status-badge::after{
  aspect-ratio:1/1!important;
  border-radius:50%!important;
}
body.khattab-branch-menu-page .branch-status-badge{
  width:10px!important;height:10px!important;min-width:10px!important;max-width:10px!important;
  flex:0 0 10px!important;transform:none!important;
}
body.khattab-branch-menu-page .branch-status-badge::after{inset:-6px!important;}

@media (min-width:783px){
  body.khattab-branch-menu-page .khattab-premium-branch-hero{
    --kh-hero-top-safe:clamp(200px,15vw,246px);
  }
  body.khattab-branch-menu-page .branch-hero-content{
    max-width:884px!important;
  }
  body.khattab-branch-menu-page .branch-info-wrapper{gap:11px!important;}
  body.khattab-branch-menu-page .branch-buttons{margin-top:20px!important;}
}
@media (max-width:782px){
  body.khattab-branch-menu-page .khattab-premium-branch-hero{
    --kh-hero-top-safe:clamp(144px,35vw,178px);
    min-height:470px!important;
    padding:var(--kh-hero-top-safe) 9px 24px!important;
  }
  body.khattab-branch-menu-page .branch-hero-content{
    width:calc(100% - 14px)!important;
    padding:17px 11px!important;
    border-radius:22px!important;
  }
}
@media (max-width:420px){
  body.khattab-branch-menu-page .khattab-premium-branch-hero{
    --kh-hero-top-safe:142px;
    min-height:440px!important;
  }
  body.khattab-branch-menu-page .branch-hours-wrapper{
    display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
    align-items:center!important;justify-content:center!important;gap:7px!important;
  }
  body.khattab-branch-menu-page .branch-hours{font-size:10.7px!important;white-space:nowrap!important;}
  body.khattab-branch-menu-page .branch-status-wrapper{font-size:10.5px!important;padding:5px 8px!important;gap:5px!important;}
}

/* =========================================================
   vNext.20 — branch-menu click-layer isolation + status pulse alignment.
   Astra below-header grid sections can stretch over the hero/menu area.
   Keep the container visually above where needed but transparent to clicks;
   restore pointer events only for real interactive header controls.
   ========================================================= */
body.khattab-branch-menu-page :where(
  .site-header-below-section-left,
  .site-header-below-section-center,
  .site-header-below-section-right,
  .site-header-primary-section-left,
  .site-header-primary-section-center,
  .site-header-primary-section-right,
  .ast-grid-section,
  .ast-builder-grid-row-container-inner
){
  pointer-events:none!important;
}
body.khattab-branch-menu-page :where(
  .site-header-below-section-left,
  .site-header-below-section-center,
  .site-header-below-section-right,
  .site-header-primary-section-left,
  .site-header-primary-section-center,
  .site-header-primary-section-right,
  .ast-grid-section,
  .ast-builder-grid-row-container-inner
) :where(a,button,input,select,textarea,[role="button"],.elementor-social-icon,.ast-header-social-wrap,.ast-builder-menu){
  pointer-events:auto!important;
}

/* Hero metadata stays at 99; logo/social/header controls remain higher without
   creating a click-blocking transparent sheet over the menu buttons. */
body.khattab-branch-menu-page .branch-info-wrapper,
body.khattab-branch-menu-page .branch-hours-wrapper,
body.khattab-branch-menu-page .branch-buttons,
body.khattab-branch-menu-page .kh-branch-kicker{
  z-index:99!important;
}
body.khattab-branch-menu-page :where(
  .custom-logo-link,.custom-logo,.site-logo-img,
  .ast-header-social-wrap,.elementor-social-icons-wrapper,.elementor-social-icon,
  .main-header-menu a,.ast-builder-menu a
){
  position:relative!important;
  z-index:140!important;
  pointer-events:auto!important;
}

/* The pulse ring uses the exact centre of the status lamp. Do not use inset,
   because it can be offset by RTL/flex sizing and make the glow look detached. */
body.khattab-branch-menu-page .branch-status-wrapper{
  align-items:center!important;
  line-height:1.2!important;
  overflow:visible!important;
}
body.khattab-branch-menu-page .branch-status-badge{
  position:relative!important;
  display:inline-block!important;
  width:10px!important;
  height:10px!important;
  min-width:10px!important;
  max-width:10px!important;
  flex:0 0 10px!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  transform-origin:50% 50%!important;
  border-radius:50%!important;
  line-height:0!important;
  overflow:visible!important;
}
body.khattab-branch-menu-page .branch-status-badge::after{
  content:""!important;
  position:absolute!important;
  inset:auto!important;
  left:50%!important;
  top:50%!important;
  width:20px!important;
  height:20px!important;
  margin:-10px 0 0 -10px!important;
  border-radius:50%!important;
  box-sizing:border-box!important;
  transform-origin:50% 50%!important;
  pointer-events:none!important;
}
@media(max-width:420px){
  body.khattab-branch-menu-page .branch-status-badge{
    width:9px!important;height:9px!important;min-width:9px!important;max-width:9px!important;flex-basis:9px!important;
  }
  body.khattab-branch-menu-page .branch-status-badge::after{
    width:18px!important;height:18px!important;margin:-9px 0 0 -9px!important;
  }
}

/* =========================================================
 * vNext.21 — branch/menu cleanup
 * - Hero contact buttons removed from markup; keep defensive hide for cached Elementor HTML.
 * - Prevent tiny horizontal overflow from 100vw/animated wrappers.
 * - Normal content scrolling remains available.
 * ========================================================= */
html:has(body.khattab-branch-menu-page),
body.khattab-branch-menu-page{
  max-width:100%;
  overflow-x:clip!important;
}
body.khattab-branch-menu-page .branch-buttons,
body.khattab-branch-menu-page .branch-btn{
  display:none!important;
}
body.khattab-branch-menu-page .khattab-branch-content-shell,
body.khattab-branch-menu-page .khattab-premium-branch-hero,
body.khattab-branch-menu-page .elementor,
body.khattab-branch-menu-page .elementor-section,
body.khattab-branch-menu-page .e-con{
  max-width:100%!important;
}

/* =========================================================
 * vNext.22 — desktop-only branch hero data alignment
 * Keep tablet/mobile exactly as before. On wide screens the branch data
 * sits completely inside the frosted card with a deliberate hierarchy.
 * ========================================================= */
@media (min-width:1024px){
  body.khattab-branch-menu-page .khattab-premium-branch-hero{
    --kh-hero-top-safe:clamp(188px,13vw,226px);
    min-height:clamp(485px,40vw,570px)!important;
    padding:var(--kh-hero-top-safe) 24px 42px!important;
  }
  body.khattab-branch-menu-page .branch-hero-content{
    width:min(920px,calc(100% - 48px))!important;
    min-height:178px!important;
    padding:22px 30px 24px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    align-content:center!important;
    justify-items:stretch!important;
    gap:13px!important;
    text-align:right!important;
    overflow:hidden!important;
  }
  body.khattab-branch-menu-page .kh-branch-kicker{
    justify-self:end!important;
    margin:0!important;
    min-height:42px!important;
    padding:8px 24px!important;
    font-size:clamp(18px,1.55vw,22px)!important;
    line-height:1.15!important;
    position:relative!important;
    z-index:101!important;
  }
  body.khattab-branch-menu-page .branch-info-wrapper{
    width:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1.18fr) minmax(0,.95fr)!important;
    grid-template-areas:"address hours"!important;
    align-items:center!important;
    justify-items:stretch!important;
    gap:16px 28px!important;
    margin:0!important;
    padding:4px 0 0!important;
    box-sizing:border-box!important;
  }
  body.khattab-branch-menu-page .branch-address{
    grid-area:address!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    justify-content:flex-start!important;
    text-align:right!important;
    font-size:clamp(13px,1vw,15px)!important;
    line-height:1.55!important;
    white-space:normal!important;
  }
  body.khattab-branch-menu-page .branch-hours-wrapper{
    grid-area:hours!important;
    width:100%!important;
    min-width:0!important;
    margin:0!important;
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:10px!important;
    white-space:nowrap!important;
  }
  body.khattab-branch-menu-page .branch-hours{
    width:auto!important;
    min-width:0!important;
    margin:0!important;
    justify-content:flex-end!important;
    font-size:clamp(12.5px,.92vw,14px)!important;
    line-height:1.4!important;
    white-space:nowrap!important;
  }
  body.khattab-branch-menu-page .branch-status-wrapper{
    min-height:32px!important;
    margin:0!important;
    padding:6px 10px!important;
    align-self:center!important;
    flex:0 0 auto!important;
    font-size:11.5px!important;
    white-space:nowrap!important;
  }
  /* The old contact actions stay removed as requested in vNext.21. */
  body.khattab-branch-menu-page .branch-buttons,
  body.khattab-branch-menu-page .branch-btn{
    display:none!important;
  }
}

/* vNext.42 — shared FAQ on every branch/menu page */
.khattab-branch-faq{
  position:relative;width:100%;padding:clamp(44px,6vw,72px) 16px 78px;
  background:linear-gradient(180deg,#fff9ed,#f4e6cf);
  font-family:"Cairo",system-ui,sans-serif
}
.khattab-branch-faq__inner{width:min(940px,100%);margin:0 auto}
.khattab-branch-faq__head{text-align:center;margin-bottom:24px}
.khattab-branch-faq__head>span{display:inline-flex;padding:5px 12px;border-radius:999px;background:#fff2d6;border:1px solid rgba(178,129,38,.22);color:#7b1117;font-size:11px;font-weight:1000}
.khattab-branch-faq__head h2{margin:8px 0 0!important;color:#341e17!important;font-size:clamp(26px,4vw,38px)!important;font-weight:1000!important}
.khattab-branch-faq__list{display:grid;gap:10px}
.khattab-branch-faq__item{border:1px solid rgba(115,70,39,.12);border-radius:17px;background:#fffdf8;box-shadow:0 8px 22px rgba(67,34,18,.045);overflow:hidden}
.khattab-branch-faq__item summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:58px;padding:13px 17px;cursor:pointer;color:#5e1417;font-size:14px;font-weight:1000}
.khattab-branch-faq__item summary::-webkit-details-marker{display:none}
.khattab-branch-faq__item summary span{flex:0 0 30px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#f5ead5;color:#8a1519;font-size:21px;transition:transform .18s ease}
.khattab-branch-faq__item[open] summary span{transform:rotate(45deg)}
.khattab-branch-faq__item>div{padding:0 17px 16px;color:#6f5a4e}
.khattab-branch-faq__item p{margin:0;line-height:1.9;font-size:13px;font-weight:650}
.khattab-section-divider--faq{display:block!important}
@media(max-width:640px){.khattab-branch-faq{padding:38px 10px 68px}.khattab-branch-faq__item summary{font-size:13px;padding-inline:13px}.khattab-branch-faq__item>div{padding-inline:13px}}


/* =========================================================
 * vNext.57 — DESKTOP BRANCH PAGE FLOW FIX
 * Keep Hero, menu sections, Ramadan banner, FAQ and footer
 * in one vertical full-width document flow.
 * ========================================================= */
body.khattab-branch-menu-page{
  overflow-x:clip!important;
}

/* Astra/theme outer wrappers must never turn the branch page + FAQ into columns. */
body.khattab-branch-menu-page #page,
body.khattab-branch-menu-page #content,
body.khattab-branch-menu-page .site-content{
  width:100%!important;
  max-width:100%!important;
}

body.khattab-branch-menu-page .site-content > .ast-container,
body.khattab-branch-menu-page #content > .ast-container,
body.khattab-branch-menu-page .ast-container:has(> #primary){
  width:100%!important;
  max-width:100%!important;
  display:block!important;
  grid-template-columns:none!important;
  gap:0!important;
  margin:0!important;
  padding-left:0!important;
  padding-right:0!important;
}

body.khattab-branch-menu-page #primary,
body.khattab-branch-menu-page .content-area,
body.khattab-branch-menu-page main.site-main,
body.khattab-branch-menu-page article.page,
body.khattab-branch-menu-page article.type-page,
body.khattab-branch-menu-page .entry-content{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  float:none!important;
  clear:both!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Only the ROOT Elementor document is forced into vertical flow.
 * Internal Elementor containers remain untouched, so Hero info grids stay intact.
 */
body.khattab-branch-menu-page .entry-content > .elementor,
body.khattab-branch-menu-page #primary > .elementor,
body.khattab-branch-menu-page main.site-main > .elementor{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}

body.khattab-branch-menu-page .entry-content > .elementor > .elementor-element,
body.khattab-branch-menu-page .entry-content > .elementor > .e-con,
body.khattab-branch-menu-page .entry-content > .elementor > .elementor-section{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  grid-column:1 / -1!important;
  flex-basis:100%!important;
  clear:both!important;
}

/* FAQ now lives inside the_content and owns a full document row. */
body.khattab-branch-menu-page .khattab-branch-faq-slot,
body.khattab-branch-menu-page .khattab-section-divider--faq,
body.khattab-branch-menu-page .khattab-branch-faq{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  grid-column:1 / -1!important;
  flex:0 0 100%!important;
  flex-basis:100%!important;
  clear:both!important;
}

body.khattab-branch-menu-page .khattab-branch-faq-slot{
  margin:0!important;
  padding:0!important;
}

/* Branch pages are full-width pages; any theme sidebar is not part of this layout. */
body.khattab-branch-menu-page #secondary,
body.khattab-branch-menu-page .widget-area.sidebar-main{
  display:none!important;
}

@media(min-width:769px){
  body.khattab-branch-menu-page #primary,
  body.khattab-branch-menu-page .content-area{
    flex:0 0 100%!important;
    flex-basis:100%!important;
  }

  body.khattab-branch-menu-page .khattab-premium-branch-hero,
  body.khattab-branch-menu-page .branch-hero-full,
  body.khattab-branch-menu-page .khattab-branch-title-shell,
  body.khattab-branch-menu-page .khattab-branch-content-shell,
  body.khattab-branch-menu-page .khattab-unified-nav-shell,
  body.khattab-branch-menu-page #khmm-ramadan-booking{
    grid-column:1 / -1!important;
    flex:0 0 100%!important;
    flex-basis:100%!important;
    width:100%!important;
    min-width:0!important;
    clear:both!important;
  }
}
