.hafa-hs{
    position:relative;
    left:50%;right:50%;
    width:100vw;max-width:100vw;
    margin-left:-50vw;margin-right:-50vw;
    overflow:hidden;
    background:#151D26;
}
.hafa-hs *{box-sizing:border-box;}

.hafa-hs__track{position:relative;height:640px;}

.hafa-hs__slide{
    position:absolute;inset:0;
    background-size:cover;background-position:center;
    display:flex;align-items:center;
    opacity:0;visibility:hidden;
    transform:scale(1.04);
    transition:opacity .8s ease,transform 1.2s ease,visibility .8s;
}
.hafa-hs__slide.is-active{opacity:1;visibility:visible;transform:scale(1);}

.hafa-hs__inner{width:100%;max-width:1200px;margin:0 auto;padding:0 40px;}
.hafa-hs__content{max-width:620px;}

.hafa-hs__eyebrow{
    display:inline-block;
    font-size:13px;font-weight:800;
    letter-spacing:.14em;text-transform:uppercase;
    color:#A3BAD9;
    padding:9px 18px;margin-bottom:22px;
    border:1px solid rgba(163,186,217,.4);
    border-radius:24px;
    background:rgba(255,255,255,.05);
    backdrop-filter:blur(6px);
    opacity:0;transform:translateY(16px);
}
.hafa-hs__title{
    font-size:52px;font-weight:800;
    line-height:1.14;letter-spacing:-.02em;
    color:#fff;margin:0 0 20px;
    opacity:0;transform:translateY(20px);
}
.hafa-hs__text{
    font-size:17px;line-height:1.8;
    color:rgba(255,255,255,.86);
    margin:0 0 32px;max-width:560px;
    opacity:0;transform:translateY(20px);
}
.hafa-hs__actions{display:flex;gap:14px;flex-wrap:wrap;opacity:0;transform:translateY(20px);}

.hafa-hs__slide.is-active .hafa-hs__eyebrow{opacity:1;transform:translateY(0);transition:opacity .6s ease .25s,transform .6s ease .25s;}
.hafa-hs__slide.is-active .hafa-hs__title{opacity:1;transform:translateY(0);transition:opacity .6s ease .4s,transform .6s ease .4s;}
.hafa-hs__slide.is-active .hafa-hs__text{opacity:1;transform:translateY(0);transition:opacity .6s ease .55s,transform .6s ease .55s;}
.hafa-hs__slide.is-active .hafa-hs__actions{opacity:1;transform:translateY(0);transition:opacity .6s ease .7s,transform .6s ease .7s;}

.hafa-hs__btn{
    display:inline-flex;align-items:center;justify-content:center;
    padding:16px 34px;border-radius:11px;
    font-size:15px;font-weight:800;text-decoration:none;
    border:2px solid transparent;transition:background .25s,color .25s,border-color .25s;
}
.hafa-hs__btn--fill{background:#fff;color:#303E8C;}
.hafa-hs__btn--fill:hover{background:#A3BAD9;color:#151D26;text-decoration:none;}
.hafa-hs__btn--ghost{background:transparent;border-color:rgba(255,255,255,.45);color:#fff;}
.hafa-hs__btn--ghost:hover{background:rgba(255,255,255,.12);border-color:#fff;color:#fff;text-decoration:none;}

.hafa-hs__arrow{
    position:absolute;top:50%;transform:translateY(-50%);
    z-index:5;width:52px;height:52px;border-radius:50%;
    border:1px solid rgba(255,255,255,.3);
    background:rgba(21,29,38,.35);backdrop-filter:blur(6px);
    color:#fff;font-size:26px;line-height:1;cursor:pointer;
    display:flex;align-items:center;justify-content:center;
    transition:background .25s,border-color .25s;
}
.hafa-hs__arrow:hover{background:rgba(48,62,140,.7);border-color:#fff;}
.hafa-hs__arrow--prev{inset-inline-start:26px;}
.hafa-hs__arrow--next{inset-inline-end:26px;}

.hafa-hs__dots{
    position:absolute;bottom:28px;inset-inline-start:0;inset-inline-end:0;
    z-index:5;display:flex;gap:10px;justify-content:center;
}
.hafa-hs__dot{
    width:11px;height:11px;border-radius:50%;
    border:none;cursor:pointer;padding:0;
    background:rgba(255,255,255,.4);
    transition:background .25s,width .25s,border-radius .25s;
}
.hafa-hs__dot.is-active{background:#fff;width:30px;border-radius:6px;}

/* Arabic */
.hafa-hs--rtl .hafa-hs__eyebrow,
.hafa-hs--rtl .hafa-hs__title,
.hafa-hs--rtl .hafa-hs__text,
.hafa-hs--rtl .hafa-hs__btn{
    letter-spacing:normal;text-transform:none;
    font-family:'Cairo','Tajawal',sans-serif;
}
.hafa-hs--rtl .hafa-hs__title{line-height:1.4;}

@media(max-width:1024px){
    .hafa-hs__track{height:560px;}
    .hafa-hs__title{font-size:40px;}
}
@media(max-width:768px){
    .hafa-hs__track{height:500px;}
    .hafa-hs__inner{padding:0 24px;}
    .hafa-hs__title{font-size:30px;}
    .hafa-hs__text{font-size:15px;}
    .hafa-hs__arrow{width:42px;height:42px;font-size:22px;}
    .hafa-hs__arrow--prev{inset-inline-start:12px;}
    .hafa-hs__arrow--next{inset-inline-end:12px;}
}

/* Push content below the transparent header */
.hafa-hs__slide{align-items:flex-start;padding-top:160px;padding-bottom:60px;}
.hafa-hs__track{height:auto;min-height:660px;}
.hafa-hs--banner .hafa-hs__slide{position:relative;}

/* Banner badges */
.hafa-hs__badges{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 30px;}
.hafa-hs__badge-chip{
    display:inline-flex;align-items:center;gap:8px;
    padding:11px 20px;border-radius:12px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.2);
    backdrop-filter:blur(6px);
    color:#fff;font-size:13.5px;font-weight:700;
}
.hafa-hs__badge-chip::before{
    content:'';width:16px;height:16px;flex:0 0 auto;
    background:#A3BAD9;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
            mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.hafa-hs--rtl .hafa-hs__badge-chip{font-family:'Cairo','Tajawal',sans-serif;}

@media(max-width:768px){
    .hafa-hs__slide{padding-top:120px;padding-bottom:44px;}
    .hafa-hs__track{min-height:560px;}
}

/* Compact fallback banner (page title only) */
.hafa-hs--compact .hafa-hs__track,
.hafa-hs--compact.hafa-hs{min-height:0;}
.hafa-hs--compact .hafa-hs__slide{min-height:360px;padding-top:170px;padding-bottom:70px;}
.hafa-hs--compact .hafa-hs__title{font-size:44px;margin:0;}
@media(max-width:768px){
    .hafa-hs--compact .hafa-hs__slide{min-height:280px;padding-top:120px;padding-bottom:44px;}
    .hafa-hs--compact .hafa-hs__title{font-size:28px;}
}
