/* ===== Platform banners (live text, Noto Kufi Arabic + Noto Sans, 3D lettering, vertical academy logo) ===== */
@font-face{font-family:AhbKufi;font-weight:700;font-display:swap;src:url(fonts/noto-kufi-arabic-arabic-700-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+FB50-FDFF,U+FE70-FEFF,U+200C-200F}
@font-face{font-family:AhbKufi;font-weight:700;font-display:swap;src:url(fonts/noto-sans-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-024F,U+2000-206F}
@font-face{font-family:AhbKufi;font-weight:800;font-display:swap;src:url(fonts/noto-kufi-arabic-arabic-800-normal.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+FB50-FDFF,U+FE70-FEFF,U+200C-200F}
@font-face{font-family:AhbKufi;font-weight:800;font-display:swap;src:url(fonts/noto-sans-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-024F,U+2000-206F}

.ahb{--navy:#0B1F3A;--red:#C8102E;--gold:#C9A227;--ink:#0B1F3A;--sub:#5D6B82;
  position:relative;overflow:hidden;direction:rtl;isolation:isolate;
  min-height:clamp(250px,25vw,380px);display:flex;align-items:stretch;
  background:radial-gradient(900px 420px at 72% 0%,#FFFFFF 0%,#FBF8F1 55%,#F3EEE2 100%);
  font-family:AhbKufi,"Noto Kufi Arabic",system-ui,sans-serif;color:var(--ink);text-align:right;line-height:1.35}
.ahb *{box-sizing:border-box}
.ahb::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.5;pointer-events:none;
  background:
    linear-gradient(90deg,transparent 0 calc(100% - 1px),rgba(11,31,58,.05) 0) 0 0/90px 90px,
    linear-gradient(0deg,transparent 0 calc(100% - 1px),rgba(11,31,58,.05) 0) 0 0/90px 90px}
.ahb-photo{position:absolute;inset-block:0;left:0;width:47%;background-size:cover;background-position:left center;z-index:-1;
  -webkit-mask-image:linear-gradient(90deg,#000 0%,#000 58%,transparent 100%);mask-image:linear-gradient(90deg,#000 0%,#000 58%,transparent 100%)}
.ahb-in{position:relative;width:100%;max-width:1500px;margin:0 auto;display:flex;align-items:center;gap:clamp(14px,2.4vw,40px);
  padding:clamp(18px,2.4vw,34px) clamp(18px,4vw,64px) clamp(46px,5vw,70px)}
.ahb-txt{flex:0 1 auto;min-width:0;max-width:62%}
.ahb-logo{flex:none;height:clamp(150px,19vw,290px);width:auto;filter:drop-shadow(0 10px 18px rgba(11,31,58,.28));margin-inline-start:clamp(0px,1vw,20px)}
.ahb-kick{display:flex;align-items:center;gap:12px;color:#9A7417;font-family:AhbKufi,"Noto Kufi Arabic",system-ui,sans-serif;font-weight:700;font-size:clamp(15px,1.7vw,24px)}
.ahb-kick::after{content:"";flex:1;max-width:160px;height:2px;background:linear-gradient(90deg,transparent,#C9A227)}
html[dir=rtl] .ahb-kick::after,.ahb .ahb-kick::after{background:linear-gradient(270deg,transparent,#C9A227)}
.ahb-kick small{display:block;font-family:AhbKufi,"Noto Kufi Arabic",system-ui,sans-serif;font-weight:700;font-size:clamp(11px,1vw,14px);color:var(--sub);letter-spacing:.3px}
.ahb-t{margin:.08em 0 0;font-family:AhbKufi,"Noto Kufi Arabic",system-ui,sans-serif;font-weight:800;font-size:clamp(36px,4.8vw,74px);line-height:1.4;color:var(--navy);letter-spacing:0}
.ahb-t span{color:var(--red)}
.ahb-en{font-family:AhbKufi,"Noto Kufi Arabic",system-ui,sans-serif;font-weight:700;letter-spacing:.32em;font-size:clamp(13px,1.6vw,24px);color:var(--navy);direction:ltr;text-align:right;margin-top:.15em}
.ahb-tag{margin:.7em 0 0;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;font-family:AhbKufi,"Noto Kufi Arabic",system-ui,sans-serif;font-weight:700;font-size:clamp(14px,1.55vw,22px);color:var(--navy)}
.ahb-tag i{width:8px;height:8px;border-radius:50%;background:var(--gold);display:inline-block}
.ahb-tagen{margin:.25em 0 0;direction:ltr;text-align:right;font-size:clamp(11px,1.05vw,15px);color:var(--sub);font-weight:700}
.ahb-wave{position:absolute;left:0;right:0;bottom:0;width:100%;height:clamp(40px,5.2vw,74px);z-index:1;pointer-events:none}

/* dark variant (operations) */
.ahb.dark{background:radial-gradient(900px 460px at 80% -10%,#1E3A66 0%,#0E1F3D 45%,#07142A 100%);color:#fff}
.ahb.dark::before{opacity:1;background:
    radial-gradient(circle at 24% 50%,transparent 0 92px,rgba(255,255,255,.08) 93px 95px,transparent 96px),
    linear-gradient(90deg,transparent calc(24% - 1px),rgba(255,255,255,.08) 0 calc(24% + 1px),transparent 0),
    linear-gradient(90deg,transparent 0 calc(100% - 1px),rgba(255,255,255,.035) 0) 0 0/70px 70px,
    linear-gradient(0deg,transparent 0 calc(100% - 1px),rgba(255,255,255,.035) 0) 0 0/70px 70px}
.ahb.dark .ahb-t{color:#fff}.ahb.dark .ahb-t span{color:#F2CC63}
.ahb.dark .ahb-en,.ahb.dark .ahb-tag{color:#E9EEF6}.ahb.dark .ahb-tagen,.ahb.dark .ahb-kick small{color:#AEBBD0}
.ahb.dark .ahb-kick{color:#F2CC63}
.ahb.dark .ahb-logo{filter:drop-shadow(0 10px 24px rgba(0,0,0,.55))}
.ahb-art{position:absolute;inset-block:0;left:0;width:46%;z-index:-1;pointer-events:none;opacity:.95}

@media (max-width:760px){
  .ahb{min-height:0}
  .ahb-photo{width:100%;opacity:.16;-webkit-mask-image:none;mask-image:none}
  .ahb-art{width:100%;opacity:.35}
  .ahb-in{padding:18px 16px 48px;gap:12px}
  .ahb-txt{max-width:none;flex:1}
  .ahb-logo{height:118px;margin:0}
  .ahb-kick::after{display:none}
}
@media print{.ahb{display:none!important}}
/* host overrides: the player platform styles every image inside .topban as a full-width banner */
.topban{line-height:1.35!important;border-bottom:0!important;background:none!important}
.topban .ahb img.ahb-logo{display:block!important;width:auto!important;max-height:none!important;height:clamp(150px,19vw,290px)!important;object-fit:contain!important;position:static!important;animation:none!important}
@media (max-width:760px){.topban .ahb img.ahb-logo{height:118px!important}}
.hbanner .ahb{margin:0}
.cvr.banner-head .ahb{margin:0}
.ahb .ahb-dot{color:#C9A227;font-weight:700}
/* the training plan styles headings and text with !important; keep the banner's own fonts */
.ahb .ahb-t,.ahb .ahb-kick,.ahb .ahb-en,.ahb .ahb-tag{font-family:AhbKufi,"Noto Kufi Arabic",system-ui,sans-serif!important}
.ahb .ahb-tagen,.ahb .ahb-kick small{font-family:AhbKufi,"Noto Kufi Arabic",system-ui,sans-serif!important}
.ahb .ahb-t{margin:.08em 0 0!important;padding:0!important;border:0!important;background:none!important;text-align:right!important}
.cvr.banner-head .ahb-in{padding-top:clamp(62px,6vw,80px)}
/* keep the logo at its intended size whatever the host page does to images */
.ahb img.ahb-logo{width:auto!important;max-width:none!important;height:clamp(150px,19vw,290px)!important;object-fit:contain!important}
@media (max-width:760px){
  .ahb img.ahb-logo,.topban .ahb img.ahb-logo{height:96px!important}
  .ahb .ahb-t{font-size:clamp(26px,8vw,34px)!important}
  .ahb-en{letter-spacing:.16em;font-size:11px}
  .ahb-tag{font-size:13.5px;gap:4px 10px}
  .ahb-tagen{font-size:10.5px}
  .ahb-kick{font-size:14px}
  .ahb-art{opacity:.18}
  .cvr.banner-head .ahb-in{padding-top:64px}
}

/* 3D lettering: a solid extruded side, then a soft drop shadow */
.ahb .ahb-t{text-shadow:1px 1px 0 #061327,2px 2px 0 #061327,3px 3px 0 #061327,4px 4px 0 #04101F,5px 6px 10px rgba(0,0,0,.35)!important;letter-spacing:0!important}
.ahb .ahb-t span{text-shadow:1px 1px 0 #8E0A20,2px 2px 0 #8E0A20,3px 3px 0 #7A0718,4px 4px 0 #64050F,5px 6px 10px rgba(0,0,0,.32)!important}
.ahb .ahb-kick{text-shadow:1px 1px 0 #6E5210,2px 2px 0 #5A420B,3px 3px 5px rgba(0,0,0,.22)}
.ahb .ahb-en,.ahb .ahb-tag{text-shadow:1px 1px 0 #061327,2px 2px 0 #04101F,3px 3px 5px rgba(0,0,0,.25);letter-spacing:.06em}
.ahb .ahb-tag{letter-spacing:0}
.ahb.dark .ahb-t{text-shadow:1px 1px 0 #C9D2DF,2px 2px 0 #A9B4C5,3px 3px 0 #8794A8,4px 4px 0 #66738A,5px 5px 0 #4A566C,6px 8px 12px rgba(0,0,0,.6)!important}
.ahb.dark .ahb-t span{text-shadow:1px 1px 0 #D8B44A,2px 2px 0 #B8952F,3px 3px 0 #96771F,4px 4px 0 #765C14,5px 5px 0 #57430C,6px 8px 12px rgba(0,0,0,.6)!important}
.ahb.dark .ahb-kick{text-shadow:1px 1px 0 #A8852A,2px 2px 0 #7A5F18,3px 4px 6px rgba(0,0,0,.5)}
.ahb.dark .ahb-en,.ahb.dark .ahb-tag{text-shadow:1px 1px 0 #8794A8,2px 2px 0 #4A566C,3px 4px 6px rgba(0,0,0,.5)}
@media (max-width:760px){.ahb .ahb-t{text-shadow:1px 1px 0 #061327,2px 2px 0 #04101F,3px 4px 6px rgba(0,0,0,.3)!important}.ahb .ahb-t span{text-shadow:1px 1px 0 #8E0A20,2px 2px 0 #64050F,3px 4px 6px rgba(0,0,0,.3)!important}.ahb.dark .ahb-t,.ahb.dark .ahb-t span{text-shadow:1px 1px 0 #A9B4C5,2px 2px 0 #66738A,3px 3px 0 #4A566C,4px 5px 8px rgba(0,0,0,.6)!important}}
.ahb .ahb-kick small,.ahb .ahb-tagen{text-shadow:none!important}
.ahb,.ahb *{font-family:AhbKufi,"Noto Kufi Arabic",system-ui,sans-serif!important}
/* gold 3D: the extruded side of the letters is gold */
.ahb .ahb-t,.ahb .ahb-t span{text-shadow:1px 1px 0 #F2CC63,2px 2px 0 #E0B443,3px 3px 0 #C9A227,4px 4px 0 #A9861B,5px 5px 0 #8A6B12,6px 8px 12px rgba(0,0,0,.35)!important}
.ahb .ahb-en,.ahb .ahb-tag{text-shadow:1px 1px 0 #E0B443,2px 2px 0 #A9861B,3px 4px 6px rgba(0,0,0,.25)}
.ahb .ahb-kick{color:#B8891A;text-shadow:1px 1px 0 #F2CC63,2px 2px 0 #8A6B12,3px 4px 6px rgba(0,0,0,.22)}
.ahb .ahb-tag i{background:linear-gradient(135deg,#F7DD84,#C9A227 55%,#8A6B12);box-shadow:1px 1px 0 #8A6B12}
.ahb-en{background:none}
.ahb.dark .ahb-t{text-shadow:1px 1px 0 #F7DD84,2px 2px 0 #E0B443,3px 3px 0 #C9A227,4px 4px 0 #A9861B,5px 5px 0 #8A6B12,6px 6px 0 #6E5210,7px 9px 14px rgba(0,0,0,.65)!important}
.ahb.dark .ahb-t span{color:#F2CC63;text-shadow:1px 1px 0 #FFF3C4,2px 2px 0 #C9A227,3px 3px 0 #A9861B,4px 4px 0 #8A6B12,5px 5px 0 #6E5210,6px 6px 0 #54400B,7px 9px 14px rgba(0,0,0,.65)!important}
.ahb.dark .ahb-en,.ahb.dark .ahb-tag{text-shadow:1px 1px 0 #C9A227,2px 2px 0 #6E5210,3px 4px 6px rgba(0,0,0,.5)}
.ahb.dark .ahb-kick{color:#F2CC63;text-shadow:1px 1px 0 #A9861B,2px 2px 0 #6E5210,3px 4px 6px rgba(0,0,0,.5)}
@media (max-width:760px){.ahb .ahb-t,.ahb .ahb-t span{text-shadow:1px 1px 0 #F2CC63,2px 2px 0 #C9A227,3px 3px 0 #8A6B12,4px 5px 8px rgba(0,0,0,.3)!important}.ahb.dark .ahb-t,.ahb.dark .ahb-t span{text-shadow:1px 1px 0 #F2CC63,2px 2px 0 #C9A227,3px 3px 0 #8A6B12,4px 5px 8px rgba(0,0,0,.6)!important}}

/* mini banners: platform cards on the portal home page */
.mod .ban.ahbwrap{display:block;height:170px;overflow:hidden;text-decoration:none}
.ahb.mini{min-height:0;height:100%}
.ahb.mini .ahb-in{padding:12px 20px 30px;gap:14px;height:100%}
.ahb.mini .ahb-txt{max-width:70%}
.ahb.mini img.ahb-logo{height:118px!important}
.ahb.mini .ahb-kick{font-size:13px;gap:8px}.ahb.mini .ahb-kick::after{display:none}
.ahb.mini .ahb-kick small{font-size:10px}
.ahb.mini .ahb-t{font-size:34px!important;line-height:1.35}
.ahb.mini .ahb-t,.ahb.mini .ahb-t span{text-shadow:1px 1px 0 #F2CC63,2px 2px 0 #C9A227,3px 3px 0 #8A6B12,4px 5px 8px rgba(0,0,0,.3)!important}
.ahb.mini .ahb-en{font-size:12px;letter-spacing:.08em}
.ahb.mini .ahb-tag{font-size:12.5px;gap:3px 8px;margin-top:.4em}.ahb.mini .ahb-tag i{width:6px;height:6px}
.ahb.mini .ahb-tagen{display:none}
.ahb.mini .ahb-wave{height:30px}
.ahb.mini .ahb-photo{width:45%}
@media (max-width:760px){.mod .ban.ahbwrap{height:150px}.ahb.mini .ahb-t{font-size:27px!important}.ahb.mini img.ahb-logo{height:96px!important}.ahb.mini .ahb-tag{display:none}.ahb.mini .ahb-photo{width:100%}}
.ahb.mini .ahb-kick,.ahb.mini .ahb-tag,.ahb.mini .ahb-en{text-shadow:1px 1px 0 rgba(138,107,18,.55)!important}
.ahb.mini.dark .ahb-kick,.ahb.mini.dark .ahb-tag,.ahb.mini.dark .ahb-en{text-shadow:1px 1px 0 rgba(0,0,0,.6)!important}
@media (max-width:760px){.ahb.mini .ahb-kick small{display:none}.ahb.mini .ahb-photo{opacity:.3}}
