/* ==========================================================================
   KHALED PUBLIC SITE SYSTEM V3
   Sole visual authority for the public content sections and native footer.
   ========================================================================== */

:root{
    --kps-gold:#C5A069;
    --kps-gold-dark:#A68554;
    --kps-gold-soft:#FBF7EF;
    --kps-gold-border:#E5D4B5;

    --kps-navy:#0F172A;
    --kps-copy:#56657A;
    --kps-muted:#94A3B8;

    --kps-line:#E8DFD2;
    --kps-white:#FFFFFF;

    --kps-header-max:900px;
    --kps-description-max:820px;
    --kps-tools-max:920px;
}


/* ==========================================================================
   PAGE RHYTHM
   ========================================================================== */

.public-section-shell{
    box-sizing:border-box;
    padding-top:28px;
}

.announcement-stack[data-placement="header"]
+ .public-section-shell{
    padding-top:0;
}

.public-section-header-area{
    width:100%;
    margin:0 auto 34px;
}


/* ==========================================================================
   TITLE + DESCRIPTION — ONE CONTRACT
   ========================================================================== */

.public-section-header{
    width:min(100%,var(--kps-header-max));
    margin:0 auto 24px;
    text-align:center;
}

.public-section-title{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    align-items:baseline;

    gap:.08em .18em;

    margin:0;

    color:var(--kps-navy);

    font-size:clamp(40px,4.15vw,64px);
    font-weight:900;
    line-height:1.12;
    letter-spacing:-.035em;

    text-align:center;
}

.public-section-title-accent{
    color:var(--kps-gold) !important;
    -webkit-text-fill-color:var(--kps-gold) !important;
    background:none !important;
}

.public-section-description{
    width:min(100%,var(--kps-description-max));

    margin:16px auto 0;

    color:var(--kps-copy);

    font-size:17px;
    font-weight:600;
    line-height:1.8;

    text-align:center;
}

.dark .public-section-title{
    color:#fff;
}

.dark .public-section-description{
    color:#94A3B8;
}


/* ==========================================================================
   CANONICAL TOOLS
   Search = first full-width row.
   Filters + compact stat = second row.
   ========================================================================== */

.public-section-tools{
    width:min(100%,var(--kps-tools-max));

    margin:0 auto;
    padding:12px;

    box-sizing:border-box;

    border:1px solid var(--kps-line);
    border-radius:18px;

    background:rgba(255,255,255,.94);
}

.public-search-form{
    width:100%;
    margin:0;
}

.public-search-field{
    width:100%;

    display:grid;
    grid-template-columns:minmax(0,1fr) 48px;

    gap:8px;
}

.public-search-input{
    width:100%;
    height:48px;

    box-sizing:border-box;

    border:1px solid #E3DACD;
    border-radius:13px;

    background:#fff;
    color:#172033;

    padding-inline:16px;

    outline:none;

    font-size:13px;
    font-weight:600;
}

.public-search-input:focus{
    border-color:var(--kps-gold);

    box-shadow:
        0 0 0 3px
        rgba(197,160,105,.10);
}

.public-search-button{
    width:48px;
    height:48px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:1px solid var(--kps-gold);
    border-radius:13px;

    background:var(--kps-gold);
    color:#fff;

    cursor:pointer;
}

.public-search-button:hover{
    background:var(--kps-gold-dark);
    border-color:var(--kps-gold-dark);
}

.public-tools-bottom{
    width:100%;

    display:grid;
    grid-template-columns:minmax(0,1fr) auto;

    align-items:center;

    gap:10px;

    margin-top:10px;
}

.public-filter-grid{
    width:100%;

    display:grid;

    grid-template-columns:
        repeat(
            auto-fit,
            minmax(92px,1fr)
        );

    gap:7px;
}

.public-filter-chip{
    min-height:40px;
    width:100%;

    display:flex;
    align-items:center;
    justify-content:center;

    box-sizing:border-box;

    padding:7px 10px;

    border:1px solid #E5DCCD;
    border-radius:12px;

    background:#FBF9F5;
    color:#5F6B7D;

    text-decoration:none;

    font-size:11px;
    font-weight:800;
    line-height:1.25;

    text-align:center;

    cursor:pointer;
}

.public-filter-chip:hover{
    border-color:var(--kps-gold);
    color:var(--kps-gold-dark);
}

.public-filter-chip.is-active,
.public-filter-chip[aria-pressed="true"]{
    background:var(--kps-gold);
    border-color:var(--kps-gold);
    color:#fff;
}


/* ==========================================================================
   UNIFIED STATS
   IMPORTANT:
   All V2 styling is scoped to public-section-shell.
   Biography retains its established native stats styling.
   ========================================================================== */

.public-section-shell .usp-wrap{
    width:100%;
    margin:0;
    padding:0;
}

.public-section-shell .usp-grid{
    width:100%;

    display:grid;

    grid-template-columns:
        repeat(
            auto-fit,
            minmax(150px,210px)
        );

    justify-content:center;

    gap:10px;
}

.public-section-shell .usp-card{
    width:100%;
    max-width:210px;

    box-sizing:border-box;

    padding:13px 14px;

    display:grid;

    grid-template-columns:36px 1fr;
    grid-template-areas:
        "icon value"
        "icon label";

    align-items:center;
    column-gap:10px;

    background:#fff;

    border:1px solid var(--kps-gold-border);
    border-radius:15px;

    text-align:start;

    opacity:0;
    transform:translateY(6px);

    transition:
        opacity .25s ease,
        transform .25s ease;
}

.public-section-shell .usp-card.in{
    opacity:1;
    transform:none;
}

.public-section-shell .usp-icon{
    grid-area:icon;

    width:36px;
    height:36px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:10px;

    background:rgba(197,160,105,.12);
    color:var(--kps-gold);
}

.public-section-shell .usp-icon
.material-symbols-outlined{
    font-size:20px;
}

.public-section-shell .usp-value{
    grid-area:value;

    color:var(--kps-navy);

    font-size:20px;
    font-weight:900;
    line-height:1.05;
}

.public-section-shell .usp-label{
    grid-area:label;

    margin-top:3px;

    color:#64748B;

    font-size:11px;
    font-weight:700;
    line-height:1.2;
}


/* Compact inline variant: same visual level as filters. */

.public-section-shell
.usp-wrap--compact-inline{
    width:auto;
    min-width:145px;
}

.public-section-shell
.usp-wrap--compact-inline
.usp-grid{
    display:block;
    width:auto;
}

.public-section-shell
.usp-wrap--compact-inline
.usp-card{
    width:auto;
    max-width:none;
    min-width:145px;
    min-height:40px;

    padding:5px 10px;

    display:flex;
    align-items:center;
    justify-content:center;

    gap:7px;

    border-radius:12px;

    opacity:1;
    transform:none;

    white-space:nowrap;
}

.public-section-shell
.usp-wrap--compact-inline
.usp-icon{
    width:28px;
    height:28px;
    flex:0 0 28px;

    border-radius:8px;
}

.public-section-shell
.usp-wrap--compact-inline
.usp-icon
.material-symbols-outlined{
    font-size:17px;
}

.public-section-shell
.usp-wrap--compact-inline
.usp-value{
    font-size:16px;
    line-height:1;
}

.public-section-shell
.usp-wrap--compact-inline
.usp-label{
    margin:0;

    font-size:10px;
    line-height:1.1;
}


/* ==========================================================================
   UNIFIED STATS — DEFAULT CONTRACT V5
   Biography / home / standard statistic placements.
   Compact-inline placements are intentionally excluded.
   ========================================================================== */

.usp-wrap:not(.usp-wrap--compact-inline){
    width:min(
        calc(100% - 64px),
        1480px
    ) !important;

    margin:
        28px auto
        42px !important;

    padding:0 !important;

    box-sizing:border-box;
}

.usp-wrap:not(.usp-wrap--compact-inline)
.usp-grid{
    width:100%;

    display:grid;

    grid-template-columns:
        repeat(
            auto-fit,
            minmax(170px,1fr)
        );

    justify-content:center;
    align-items:stretch;

    gap:12px;
}

.usp-wrap:not(.usp-wrap--compact-inline)
.usp-card{
    width:100%;
    min-width:0;
    min-height:86px;

    box-sizing:border-box;

    display:grid;

    grid-template-columns:
        42px
        minmax(0,1fr);

    grid-template-areas:
        "icon value"
        "icon label";

    align-items:center;

    column-gap:12px;

    padding:14px 16px;

    background:
        linear-gradient(
            180deg,
            #FFFFFF 0%,
            #FFFCF7 100%
        );

    border:
        1px solid
        rgba(197,160,105,.42);

    border-radius:18px;

    box-shadow:
        0 8px 24px
        rgba(15,23,42,.045);

    opacity:0;

    transform:
        translateY(8px);

    transition:
        opacity .28s ease,
        transform .28s ease,
        box-shadow .20s ease,
        border-color .20s ease;
}

.usp-wrap:not(.usp-wrap--compact-inline)
.usp-card.in{
    opacity:1;
    transform:none;
}

.usp-wrap:not(.usp-wrap--compact-inline)
.usp-card.in:hover{
    transform:
        translateY(-3px);

    border-color:
        rgba(197,160,105,.72);

    box-shadow:
        0 14px 32px
        rgba(15,23,42,.075);
}

.usp-wrap:not(.usp-wrap--compact-inline)
.usp-icon{
    grid-area:icon;

    width:42px;
    height:42px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:12px;

    background:
        linear-gradient(
            145deg,
            rgba(197,160,105,.16),
            rgba(197,160,105,.07)
        );

    color:#C5A069;
}

.usp-wrap:not(.usp-wrap--compact-inline)
.usp-icon
.material-symbols-outlined{
    font-size:21px;
}

.usp-wrap:not(.usp-wrap--compact-inline)
.usp-value{
    grid-area:value;

    color:#0F172A;

    font-size:22px;
    font-weight:900;
    line-height:1;

    letter-spacing:-.02em;
}

.usp-wrap:not(.usp-wrap--compact-inline)
.usp-label{
    grid-area:label;

    margin-top:5px;

    color:#526176;

    font-size:11px;
    font-weight:700;
    line-height:1.25;
}

.dark
.usp-wrap:not(.usp-wrap--compact-inline)
.usp-card{
    background:#0F172A;
    border-color:#334155;
}

.dark
.usp-wrap:not(.usp-wrap--compact-inline)
.usp-value{
    color:#fff;
}

.dark
.usp-wrap:not(.usp-wrap--compact-inline)
.usp-label{
    color:#94A3B8;
}


/* Tablet */

@media(
    min-width:768px
)
and
(
    max-width:1199px
){

    .usp-wrap:not(.usp-wrap--compact-inline){
        width:
            calc(100% - 40px)
            !important;

        margin-top:
            24px !important;
    }

    .usp-wrap:not(.usp-wrap--compact-inline)
    .usp-grid{
        grid-template-columns:
            repeat(
                3,
                minmax(0,1fr)
            );
    }
}


/* Mobile */

@media(max-width:767px){

    .usp-wrap:not(.usp-wrap--compact-inline){
        width:
            calc(100% - 24px)
            !important;

        margin:
            20px auto
            30px !important;
    }

    .usp-wrap:not(.usp-wrap--compact-inline)
    .usp-grid{
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );

        gap:9px;
    }

    .usp-wrap:not(.usp-wrap--compact-inline)
    .usp-card{
        min-height:78px;

        grid-template-columns:
            36px
            minmax(0,1fr);

        column-gap:9px;

        padding:11px 12px;

        border-radius:15px;
    }

    .usp-wrap:not(.usp-wrap--compact-inline)
    .usp-icon{
        width:36px;
        height:36px;

        border-radius:10px;
    }

    .usp-wrap:not(.usp-wrap--compact-inline)
    .usp-value{
        font-size:19px;
    }

    .usp-wrap:not(.usp-wrap--compact-inline)
    .usp-label{
        font-size:10px;
    }
}

/* ==========================================================================
   LIBRARY GRID
   Centre incomplete final rows instead of pinning cards to RTL edge.
   ========================================================================== */

.public-section-shell .lib-grid{
    display:grid !important;

    grid-template-columns:
        repeat(
            auto-fit,
            minmax(220px,280px)
        ) !important;

    justify-content:center !important;
    align-items:stretch;

    gap:28px !important;
}


/* ==========================================================================
   CONTACT — SAME PUBLIC SECTION IDENTITY
   ========================================================================== */

.contact-public-page{
    width:min(100%,1120px);

    margin-inline:auto;

    padding-inline:24px;
    padding-bottom:72px;
}

.contact-public-form{
    width:min(100%,760px);

    margin:0 auto;

    padding:clamp(22px,3vw,38px);

    box-sizing:border-box;

    background:rgba(255,255,255,.96);

    border:1px solid #E8DFD2;
    border-radius:28px;

    box-shadow:
        0 20px 55px
        rgba(15,23,42,.06);
}

.dark .contact-public-form{
    background:#0F172A;
    border-color:#334155;
}

.contact-public-form form{
    width:100%;
    margin:0;
}


/* ==========================================================================
   FOOTER — ONE REAL ICON ROW
   ========================================================================== */

.footer-brand{
    text-align:center;
}

.footer-brand > a{
    display:inline-flex !important;
    width:auto !important;

    align-items:center !important;
    justify-content:center !important;

    gap:12px !important;

    margin-inline:auto !important;
}

.footer-brand > a img{
    display:block;

    flex:0 0 auto;

    margin:0 !important;
}

.footer-brand > p{
    width:min(100%,360px);

    margin-inline:auto;

    text-align:center;
}

.footer-icon-row{
    width:100%;

    display:flex;

    flex-wrap:wrap;

    align-items:center;
    justify-content:center;

    gap:9px;

    margin:18px auto 0;
}

.footer-icon-row > a{
    width:36px !important;
    min-width:36px !important;
    max-width:36px !important;

    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;

    flex:0 0 36px !important;

    display:inline-flex !important;

    align-items:center !important;
    justify-content:center !important;

    padding:0 !important;
    margin:0 !important;

    border:
        1px solid
        rgba(197,160,105,.38) !important;

    border-radius:9px !important;

    background:
        rgba(197,160,105,.06) !important;

    color:#C5A069 !important;

    text-decoration:none !important;

    box-shadow:none !important;

    transition:
        transform .18s ease,
        background .18s ease,
        color .18s ease,
        border-color .18s ease !important;
}

.footer-icon-row > a:hover{
    transform:translateY(-2px) !important;

    background:#C5A069 !important;
    border-color:#C5A069 !important;

    color:#fff !important;
}

.footer-icon-row svg{
    width:16px;
    height:16px;

    display:block;

    fill:currentColor;
}

.footer-icon-row
.material-symbols-outlined{
    font-size:18px;
}


/* ==========================================================================
   RESPONSIVE CORRECTIONS
   ========================================================================== */

@media(max-width:1023px){

    .public-section-shell .lib-grid{
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            ) !important;
    }
}

@media(max-width:639px){

    .usp-wrap:not(.usp-wrap--compact-inline){
        padding-inline:12px;
    }

    .usp-wrap:not(.usp-wrap--compact-inline) .usp-grid{
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );
    }

    .public-section-shell .lib-grid{
        grid-template-columns:
            minmax(0,1fr) !important;
    }

    .contact-public-page{
        padding-inline:16px;
        padding-bottom:54px;
    }

    .contact-public-form{
        padding:18px;
        border-radius:22px;
    }
}

/* ==========================================================================
   CLIENT FILTER STATES
   ========================================================================== */

[data-public-filter-item][hidden]{
    display:none !important;
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media(max-width:767px){

    .public-section-shell{
        padding-top:16px;
    }

    .public-section-header-area{
        margin-bottom:26px;
    }

    .public-section-header{
        margin-bottom:18px;
    }

    .public-section-title{
        font-size:clamp(32px,9vw,42px);
    }

    .public-section-description{
        margin-top:12px;

        font-size:15px;
        line-height:1.7;
    }

    .public-section-tools{
        width:100%;
        padding:10px;
    }

    .public-tools-bottom{
        grid-template-columns:1fr;
    }

    .public-filter-grid{
        grid-template-columns:
            repeat(
                2,
                minmax(0,1fr)
            );
    }

    .public-section-shell
    .usp-wrap--compact-inline{
        width:100%;

        display:flex;
        justify-content:center;
    }

    .public-section-shell
    .usp-wrap--compact-inline
    .usp-card{
        min-width:150px;
    }

    .footer-brand,
    .footer-brand > a,
    .footer-brand > p{
        text-align:center !important;
        justify-content:center !important;
        margin-inline:auto !important;
    }

    .footer-brand .footer-contact-wrap,
    .footer-brand [data-testid="footer-social"]{
        margin-top:14px !important;
    }
}


/* ==========================================================================
   ACCESSIBILITY
   ========================================================================== */

@media(prefers-reduced-motion:reduce){

    .public-section-shell .usp-card{
        opacity:1;
        transform:none;
        transition:none;
    }

    .footer-brand .kfc-btn,
    .footer-brand [data-testid="footer-social"] a{
        transition:none !important;
    }
}

/* PUBLIC_VISUAL_ROOT_V19 */

/* HOME_IMPACT_CANONICAL_75_25_V19 */

/* ------------------------------------------------------------
   Container
   ------------------------------------------------------------ */

.home-impact{
    width:
        min(
            calc(100% - 40px),
            1680px
        );

    margin:
        42px auto;

    box-sizing:
        border-box;

    overflow:
        hidden;

    border-radius:
        28px;

    background:
        linear-gradient(
            108deg,
            #020817 0%,
            #020817 68%,
            #241F22 100%
        );

    color:
        #FFFFFF;
}


/* ------------------------------------------------------------
   DESKTOP + iPAD
   EXACT 75% / 25%
   ------------------------------------------------------------ */

.home-impact__grid{
    width:
        100%;

    min-height:
        410px;

    box-sizing:
        border-box;

    display:
        grid;

    grid-template-columns:
        minmax(0,3fr)
        minmax(0,1fr);

    align-items:
        stretch;

    gap:
        0;

    padding:
        clamp(
            46px,
            5vw,
            76px
        )
        clamp(
            36px,
            4vw,
            68px
        );

    /*
     * Physical layout is identical
     * in Arabic and English.
     */
    direction:
        ltr;
}


/* ------------------------------------------------------------
   75% COPY CELL
   ------------------------------------------------------------ */

.home-impact__copy{
    min-width:
        0;

    width:
        100%;

    box-sizing:
        border-box;

    padding-inline:
        clamp(
            24px,
            4vw,
            64px
        );

    display:
        flex;

    flex-direction:
        column;

    align-items:
        center;

    justify-content:
        center;

    text-align:
        center;

    overflow:
        hidden;

    direction:
        ltr;
}


html[lang="ar"]
.home-impact__copy{
    direction:
        rtl;
}


.home-impact__title{
    width:
        100% !important;

    max-width:
        100% !important;

    margin:
        0 auto !important;

    padding:
        0 !important;

    color:
        #FFFFFF !important;

    font-weight:
        900 !important;

    line-height:
        1.10 !important;

    text-align:
        center !important;

    white-space:
        normal !important;

    overflow:
        visible !important;

    text-overflow:
        unset !important;

    word-break:
        normal !important;

    overflow-wrap:
        normal !important;

    text-wrap:
        balance;

    box-sizing:
        border-box !important;
}


/*
 * Arabic remains at its approved scale.
 */
html[lang="ar"]
.home-impact__title{
    font-size:
        clamp(
            42px,
            3.8vw,
            62px
        ) !important;

    letter-spacing:
        0 !important;
}


/*
 * English receives a size that fits
 * naturally inside its 75% cell.
 */
html[lang="en"]
.home-impact__title{
    width:
        100% !important;

    max-width:
        720px !important;

    font-size:
        clamp(
            27px,
            2vw,
            34px
        ) !important;

    letter-spacing:
        -.015em !important;

    overflow:
        visible !important;
}

html[lang="en"]
.home-impact__title-line{
    display:
        block !important;

    width:
        100% !important;

    text-align:
        center !important;

    white-space:
        nowrap !important;
}


.home-impact__description{
    width:
        min(
            100%,
            780px
        ) !important;

    max-width:
        780px !important;

    margin:
        24px auto
        0 !important;

    color:
        #93A8C6 !important;

    font-size:
        clamp(
            15px,
            1.25vw,
            20px
        ) !important;

    font-weight:
        600 !important;

    line-height:
        1.6 !important;

    text-align:
        center !important;
}


html[lang="en"]
.home-impact__description{
    max-width:
        700px !important;

    font-size:
        clamp(
            14px,
            1.1vw,
            18px
        ) !important;
}


/* ------------------------------------------------------------
   25% ACTION CELL
   ------------------------------------------------------------ */

.home-impact__actions{
    min-width:
        0;

    width:
        100%;

    height:
        100%;

    box-sizing:
        border-box;

    padding-inline:
        clamp(
            16px,
            2vw,
            30px
        );

    display:
        flex;

    flex-direction:
        column;

    align-items:
        center;

    justify-content:
        center;

    gap:
        16px;

    position:
        static;

    inset:
        auto;

    transform:
        none;

    direction:
        ltr;
}


.home-impact__button{
    width:
        min(
            100%,
            280px
        ) !important;

    min-width:
        0 !important;

    min-height:
        72px !important;

    box-sizing:
        border-box !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    padding:
        14px 16px !important;

    margin:
        0 !important;

    border-radius:
        23px !important;

    font-size:
        14px !important;

    font-weight:
        850 !important;

    line-height:
        1.25 !important;

    text-align:
        center !important;

    white-space:
        nowrap !important;

    text-decoration:
        none !important;
}


.home-impact__button--primary{
    border:
        1px solid
        #C9A466 !important;

    background:
        #C9A466 !important;

    color:
        #FFFFFF !important;
}


.home-impact__button--secondary{
    border:
        1px solid
        rgba(
            255,
            255,
            255,
            .24
        ) !important;

    background:
        rgba(
            255,
            255,
            255,
            .07
        ) !important;

    color:
        #FFFFFF !important;
}


/* ------------------------------------------------------------
   iPAD / TABLET
   SAME 75/25 STRUCTURE
   Only typography/padding becomes smaller.
   ------------------------------------------------------------ */

@media(
    min-width:768px
)
and
(
    max-width:1180px
){

    .home-impact__grid{
        grid-template-columns:
            minmax(0,3fr)
            minmax(0,1fr);

        min-height:
            360px;

        padding:
            38px 24px;
    }


    .home-impact__copy{
        padding-inline:
            24px;
    }


    html[lang="ar"]
    .home-impact__title{
        font-size:
            clamp(
                34px,
                4vw,
                46px
            ) !important;
    }


    html[lang="en"]
    .home-impact__title{
        max-width:
            560px !important;

        font-size:
            clamp(
                22px,
                2.15vw,
                27px
            ) !important;
    }


    .home-impact__description{
        max-width:
            600px !important;

        font-size:
            14px !important;
    }


    html[lang="en"]
    .home-impact__description{
        max-width:
            560px !important;

        font-size:
            13px !important;
    }


    .home-impact__actions{
        padding-inline:
            12px;
    }


    .home-impact__button{
        min-height:
            62px !important;

        padding-inline:
            10px !important;

        font-size:
            12px !important;
    }
}


/* ------------------------------------------------------------
   PHONE
   Stack only here.
   ------------------------------------------------------------ */

@media(max-width:767px){

    .home-impact{
        width:
            calc(100% - 24px);

        margin:
            26px auto;

        border-radius:
            22px;
    }


    .home-impact__grid{
        min-height:
            0;

        grid-template-columns:
            minmax(
                0,
                1fr
            );

        gap:
            28px;

        padding:
            38px 20px;
    }


    .home-impact__copy{
        grid-column:
            1;

        padding:
            0 4px;
    }


    .home-impact__actions{
        grid-column:
            1;

        width:
            min(
                100%,
                360px
            );

        margin:
            0 auto;

        padding:
            0;
    }


    html[lang="ar"]
    .home-impact__title,
    html[lang="en"]
    .home-impact__title{
        font-size:
            clamp(
                30px,
                8.5vw,
                40px
            ) !important;
    }


    .home-impact__description,
    html[lang="en"]
    .home-impact__description{
        max-width:
            100% !important;

        margin-top:
            18px !important;

        font-size:
            14px !important;
    }


    .home-impact__button{
        width:
            100% !important;

        min-height:
            58px !important;

        font-size:
            13px !important;
    }
}

/* END_HOME_IMPACT_CANONICAL_75_25_V19 */

/* ==========================================================================
   HOME IMPACT
   Arabic geometry preserved.
   English gets its own bounded title contract.
   ========================================================================== */

/*
 * Arabic stays visually as approved.
 */
/*
 * English only:
 * long heading remains fully inside its 75% cell.
 */
/* ==========================================================================
   PERSONAL FOOTER
   Newsletter is disabled in data.
   Exactly two centered columns.
   ========================================================================== */

.footer-grid--personal{
    width:
        min(
            100%,
            980px
        ) !important;

    margin:
        0 auto
        64px !important;

    display:
        grid !important;

    grid-template-columns:
        repeat(
            2,
            minmax(
                0,
                1fr
            )
        ) !important;

    align-items:
        stretch !important;

    justify-content:
        center !important;

    gap:
        clamp(
            72px,
            9vw,
            140px
        ) !important;
}


.footer-grid--personal
> *{
    min-width:
        0 !important;

    min-height:
        235px !important;

    height:
        100% !important;

    box-sizing:
        border-box !important;

    align-self:
        stretch !important;

    margin:
        0 !important;
}


.footer-brand-stack,
.footer-quick-stack{
    display:
        flex !important;

    flex-direction:
        column !important;

    align-items:
        center !important;

    justify-content:
        flex-start !important;

    text-align:
        center !important;
}


.footer-brand-stack > a,
.footer-quick-stack
[data-testid="footer-quick-links-title"]{
    min-height:
        64px !important;

    margin:
        0 !important;
}


.footer-brand-stack > a{
    display:
        inline-flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    flex-wrap:
        nowrap !important;

    gap:
        12px !important;
}


/*
 * Natural identity size.
 * English remains only one degree smaller.
 */
html[lang="ar"]
.footer-brand-stack
.footer-brand-name,
html[lang="ar"]
.footer-brand-stack
span.text-xl{
    font-size:
        17px !important;
}


html[lang="en"]
.footer-brand-stack
.footer-brand-name,
html[lang="en"]
.footer-brand-stack
span.text-xl{
    font-size:
        15px !important;
}


.footer-brand-stack
.footer-brand-name,
.footer-brand-stack
span.text-xl{
    font-weight:
        800 !important;

    line-height:
        1.2 !important;

    white-space:
        nowrap !important;

    letter-spacing:
        normal !important;
}


.footer-brand-stack > p{
    width:
        min(
            100%,
            360px
        ) !important;

    min-height:
        88px !important;

    margin:
        8px auto
        0 !important;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    color:
        #64748B !important;

    font-size:
        14px !important;

    font-weight:
        500 !important;

    line-height:
        1.65 !important;

    text-align:
        center !important;
}


.footer-brand-stack
.footer-contact-wrap,
.footer-brand-stack
.kfc-row{
    margin-top:
        10px !important;
}


.footer-quick-stack
[data-testid="footer-quick-links-title"]{
    width:
        100%;

    display:
        flex !important;

    align-items:
        center !important;

    justify-content:
        center !important;

    color:
        #0F172A !important;

    font-size:
        15px !important;

    font-weight:
        800 !important;

    line-height:
        1.2 !important;

    text-align:
        center !important;
}


.footer-quick-stack
[data-testid="footer-quick-links"]{
    width:
        100%;

    margin:
        8px 0
        0 !important;

    padding:
        0 !important;

    display:
        grid !important;

    gap:
        10px !important;

    list-style:
        none !important;

    text-align:
        center !important;
}


.footer-quick-stack
[data-testid="footer-quick-links"]
a{
    font-size:
        14px !important;

    font-weight:
        500 !important;

    line-height:
        1.55 !important;
}


/* ==========================================================================
   BIO STATS
   Exactly 8 => 4 + 4 desktop.
   Larger cards + actual interaction.
   ========================================================================== */

.usp-wrap[data-placement="show_bio"]{
    width:
        min(
            calc(100% - 40px),
            1180px
        ) !important;

    max-width:
        1180px !important;

    margin:
        30px auto
        46px !important;
}


.usp-wrap[data-placement="show_bio"]
.usp-grid{
    width:
        100% !important;

    display:
        grid !important;

    grid-template-columns:
        repeat(
            4,
            minmax(
                0,
                1fr
            )
        ) !important;

    gap:
        16px !important;
}


.usp-wrap[data-placement="show_bio"]
.usp-card{
    min-width:
        0 !important;

    min-height:
        124px !important;

    padding:
        20px 22px !important;

    border:
        1px solid
        rgba(
            197,
            160,
            105,
            .48
        ) !important;

    border-radius:
        22px !important;

    background:
        rgba(
            255,
            255,
            255,
            .96
        ) !important;

    box-shadow:
        0 8px 26px
        rgba(
            15,
            23,
            42,
            .045
        ) !important;

    box-sizing:
        border-box !important;

    opacity:
        1 !important;

    transform:
        translateY(0);

    transition:
        transform .24s ease,
        box-shadow .24s ease,
        border-color .24s ease,
        background .24s ease !important;
}


.usp-wrap[data-placement="show_bio"]
.usp-card:hover{
    transform:
        translateY(-5px) !important;

    border-color:
        rgba(
            197,
            160,
            105,
            .8
        ) !important;

    box-shadow:
        0 16px 38px
        rgba(
            15,
            23,
            42,
            .10
        ) !important;
}


.usp-wrap[data-placement="show_bio"]
.usp-card--active{
    animation:
        uspCardEnterV12
        .55s
        cubic-bezier(
            .22,
            1,
            .36,
            1
        )
        both;
}


.usp-wrap[data-placement="show_bio"]
.usp-value{
    font-size:
        clamp(
            25px,
            2vw,
            32px
        ) !important;

    font-weight:
        900 !important;

    line-height:
        1 !important;
}


.usp-wrap[data-placement="show_bio"]
.usp-label{
    margin-top:
        7px !important;

    font-size:
        12px !important;

    line-height:
        1.4 !important;
}


@keyframes uspCardEnterV12{
    from{
        opacity:.72;
        transform:
            translateY(9px);
    }

    to{
        opacity:1;
        transform:
            translateY(0);
    }
}


/* ==========================================================================
   TABLET
   ========================================================================== */

@media(
    min-width:768px
)
and
(
    max-width:1100px
){

    .footer-grid--personal{
        gap:
            48px !important;
    }


    .usp-wrap[data-placement="show_bio"]
    .usp-grid{
        grid-template-columns:
            repeat(
                2,
                minmax(
                    0,
                    1fr
                )
            ) !important;
    }
}


/* ==========================================================================
   MOBILE
   ========================================================================== */

@media(max-width:767px){

    .footer-grid--personal{
        width:
            calc(100% - 24px)
            !important;

        max-width:
            620px !important;

        grid-template-columns:
            repeat(
                2,
                minmax(
                    0,
                    1fr
                )
            ) !important;

        align-items:
            stretch !important;

        gap:
            14px !important;

        margin-inline:
            auto !important;
    }


    .footer-grid--personal
    > *{
        min-width:
            0 !important;

        min-height:
            220px !important;

        height:
            100% !important;

        align-self:
            stretch !important;
    }


    .footer-brand-stack > a,
    .footer-quick-stack
    [data-testid="footer-quick-links-title"]{
        min-height:
            56px !important;
    }


    .footer-brand-stack > p{
        width:
            100% !important;

        min-height:
            88px !important;

        padding-inline:
            4px !important;

        font-size:
            11px !important;

        line-height:
            1.55 !important;
    }


    .footer-quick-stack
    [data-testid="footer-quick-links-title"]{
        font-size:
            13px !important;
    }


    .footer-quick-stack
    [data-testid="footer-quick-links"]
    a{
        font-size:
            12px !important;
    }


    .footer-brand-stack > p{
        min-height:
            0 !important;
    }


    .usp-wrap[data-placement="show_bio"]{
        width:
            calc(100% - 24px)
            !important;
    }


    .usp-wrap[data-placement="show_bio"]
    .usp-grid{
        grid-template-columns:
            repeat(
                2,
                minmax(
                    0,
                    1fr
                )
            ) !important;

        gap:
            10px !important;
    }


    .usp-wrap[data-placement="show_bio"]
    .usp-card{
        min-height:
            108px !important;

        padding:
            16px 12px !important;
    }


    .usp-wrap[data-placement="show_bio"]
    .usp-value{
        font-size:
            24px !important;
    }
}

/* END_PUBLIC_VISUAL_ROOT_V19 */

/* MOBILE_FOOTER_ROOT_V15 */

@media(max-width:767px){

    /*
     * Two real columns:
     * identity gets a little more room because
     * the English name and description are longer.
     */
    .footer-grid--personal{
        width:
            calc(100% - 28px)
            !important;

        max-width:
            620px !important;

        margin:
            0 auto
            34px !important;

        display:
            grid !important;

        grid-template-columns:
            minmax(0,3fr)
            minmax(0,2fr)
            !important;

        align-items:
            start !important;

        justify-content:
            center !important;

        gap:
            20px !important;
    }


    .footer-grid--personal > *{
        width:
            100% !important;

        min-width:
            0 !important;

        min-height:
            0 !important;

        height:
            auto !important;

        align-self:
            start !important;

        margin:
            0 !important;

        padding:
            0 !important;
    }


    /* ========================================================
       BRAND COLUMN
       ======================================================== */

    .footer-brand-stack{
        display:
            flex !important;

        flex-direction:
            column !important;

        align-items:
            center !important;

        justify-content:
            flex-start !important;

        text-align:
            center !important;

        overflow:
            visible !important;
    }


    .footer-brand-stack > a{
        width:
            100% !important;

        min-height:
            52px !important;

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        gap:
            8px !important;

        margin:
            0 !important;

        padding-inline:
            4px !important;

        box-sizing:
            border-box !important;
    }


    .footer-brand-stack > a img{
        width:
            48px !important;

        height:
            auto !important;

        max-width:
            48px !important;

        flex:
            0 0 48px !important;

        margin:
            0 !important;
    }


    html[lang="ar"]
    .footer-brand-stack
    .footer-brand-name,
    html[lang="ar"]
    .footer-brand-stack
    span.text-xl{
        font-size:
            14px !important;
    }


    html[lang="en"]
    .footer-brand-stack
    .footer-brand-name,
    html[lang="en"]
    .footer-brand-stack
    span.text-xl{
        font-size:
            12px !important;
    }


    .footer-brand-stack
    .footer-brand-name,
    .footer-brand-stack
    span.text-xl{
        min-width:
            0 !important;

        font-weight:
            800 !important;

        line-height:
            1.15 !important;

        white-space:
            nowrap !important;
    }


    .footer-brand-stack > p{
        width:
            100% !important;

        min-height:
            0 !important;

        margin:
            12px auto
            0 !important;

        padding-inline:
            4px !important;

        display:
            block !important;

        color:
            #64748B !important;

        font-size:
            11px !important;

        font-weight:
            500 !important;

        line-height:
            1.55 !important;

        text-align:
            center !important;

        box-sizing:
            border-box !important;
    }


    /*
     * Four contact/social icons in ONE row.
     * No 3 + 1 wrapping.
     */
    .footer-brand-stack
    .footer-icon-row{
        width:
            auto !important;

        max-width:
            100% !important;

        margin:
            14px auto
            0 !important;

        display:
            flex !important;

        flex-direction:
            row !important;

        flex-wrap:
            nowrap !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        gap:
            6px !important;
    }


    .footer-brand-stack
    .footer-icon-row > a{
        width:
            34px !important;

        min-width:
            34px !important;

        max-width:
            34px !important;

        height:
            34px !important;

        min-height:
            34px !important;

        max-height:
            34px !important;

        flex:
            0 0 34px !important;

        border-radius:
            9px !important;
    }


    /* ========================================================
       QUICK LINKS COLUMN
       ======================================================== */

    .footer-quick-stack{
        width:
            100% !important;

        min-width:
            0 !important;

        display:
            flex !important;

        flex-direction:
            column !important;

        align-items:
            center !important;

        justify-content:
            flex-start !important;

        text-align:
            center !important;
    }


    .footer-quick-stack
    [data-testid="footer-quick-links-title"]{
        width:
            100% !important;

        min-height:
            52px !important;

        margin:
            0 !important;

        padding:
            0 !important;

        display:
            flex !important;

        align-items:
            center !important;

        justify-content:
            center !important;

        font-size:
            13px !important;

        font-weight:
            800 !important;

        line-height:
            1.15 !important;

        text-align:
            center !important;
    }


    .footer-quick-stack
    [data-testid="footer-quick-links"]{
        width:
            100% !important;

        margin:
            12px 0
            0 !important;

        padding:
            0 !important;

        display:
            flex !important;

        flex-direction:
            column !important;

        align-items:
            center !important;

        justify-content:
            flex-start !important;

        gap:
            12px !important;

        list-style:
            none !important;
    }


    /*
     * Kill Tailwind space-y margins inherited
     * from the previous footer markup.
     */
    .footer-quick-stack
    [data-testid="footer-quick-links"]
    > *{
        margin:
            0 !important;

        padding:
            0 !important;
    }


    .footer-quick-stack
    [data-testid="footer-quick-links"]
    > * + *{
        margin-top:
            0 !important;
    }


    .footer-quick-stack
    [data-testid="footer-quick-links"]
    a{
        display:
            inline-block !important;

        margin:
            0 !important;

        padding:
            0 !important;

        font-size:
            12px !important;

        font-weight:
            500 !important;

        line-height:
            1.45 !important;

        text-align:
            center !important;
    }


    /*
     * Copyright/status starts cleanly below
     * the two-column grid.
     */
    .footer-grid--personal + *{
        margin-top:
            0 !important;
    }
}

/* END_MOBILE_FOOTER_ROOT_V15 */
