/* ==========================================================
   LANGUAGE HUB
========================================================== */

.hk-language-hub-page{
    width:100%;
    max-width:none;
    margin:0;
    padding-bottom:24px;
}
/*----------------------------------------------------------
Hero
----------------------------------------------------------*/
.hk-language-hero{
    position:relative;
    min-height:560px;
    display:flex;
    align-items:center;
}

.hk-language-hero__media{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    overflow:hidden;
    border-radius:0;
    background:#eef6f3;
    margin-bottom:0;
}

.hk-language-hero__image{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.hk-language-hero__card{
    position:relative;
    z-index:2;
    width:min(620px,92%);
    margin:0 0 0 clamp(24px, 6vw, 96px);
    padding:0;
    align-items:center;
    background:transparent;
    border:0;
    box-shadow:none;
    text-align:left;
}

.hk-language-hero__eyebrow{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:8px 16px;

    border-radius:999px;

    background:#eef7f4;

    color:#14815d;

    font-weight:700;

    margin-bottom:18px;
}

.hk-language-hero h1{
    max-width:620px;
    margin:0 0 18px;
    font-size:clamp(2.7rem,5vw,4.8rem);
    line-height:1.02;
    letter-spacing:-0.045em;
    color:#102a43;
}

.hk-language-hero h1 span{
    display:block;
}

.hk-language-hero h1 span:last-child{
    color:#16805c;
}

.hk-language-hero__subtitle{
    max-width:430px;
    margin-top:12px;
    font-size:1.12rem;
    line-height:1.8;
    color:#475569;
    font-weight:600;
}

.hk-language-hero__button{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:14px 26px;

    border-radius:999px;

    background:#1f8f67;

    color:#fff;

    text-decoration:none;

    font-weight:700;

    transition:.25s;
}

.hk-language-hero__button:hover{

    transform:translateY(-2px);

    background:#177452;
}

/*----------------------------------------------------------
Responsive-Tablate
----------------------------------------------------------*/
@media (min-width:769px) and (max-width:1024px){

    .hk-language-hero{
        position:relative;
        min-height:460px;
        display:flex;
        align-items:center;
        overflow:hidden;
        background:#f8fbfa;
    }

    .hk-language-hero__media{
        position:absolute;
        inset:0;
        width:100%;
        height:100%;
    }

    .hk-language-hero__image{
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:60% center;
    }

    .hk-language-hero::after{
        content:"";
        position:absolute;
        inset:0;
        background:linear-gradient(
            90deg,
            rgba(255,255,255,.94) 0%,
            rgba(255,255,255,.78) 38%,
            rgba(255,255,255,.18) 70%,
            rgba(255,255,255,0) 100%
        );
        z-index:1;
    }

    .hk-language-hero__card{
        position:relative;
        z-index:2;
        width:min(420px, 48%);
        margin-left:clamp(28px, 5vw, 56px);
        padding:0;
        text-align:left;
        background:transparent;
    }

    .hk-language-hero h1{
        font-size:clamp(2.4rem,5vw,3.6rem);
    }

    .hk-language-hero__subtitle{
        max-width:390px;
        font-size:1rem;
    }
}

/*----------------------------------------------------------
Responsive MObile 
----------------------------------------------------------*/

@media (max-width:768px){

    .hk-language-hub-page{
        padding:0 0 60px;
    }

.hk-language-hero{
    position:relative;
    min-height:430px;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:#f8fbfa;
}

.hk-language-hero__media{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.hk-language-hero__image{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:58% center;
}

.hk-language-hero::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        90deg,
        rgba(255,255,255,.94) 0%,
        rgba(255,255,255,.82) 38%,
        rgba(255,255,255,.18) 72%,
        rgba(255,255,255,0) 100%
    );
    z-index:1;
}

.hk-language-hero__card{
    position:relative;
    z-index:2;
    width:min(320px, 86%);
    margin-left:20px;
    padding:0;
    text-align:left;
    background:transparent;
}


    .hk-language-hero__eyebrow{
        font-size:.76rem;
        padding:7px 12px;
        margin-bottom:12px;
    }

    .hk-language-hero h1{
        max-width:330px;
        margin:0 0 12px;
        font-size:clamp(2rem,9vw,2.75rem);
        line-height:1.03;
        letter-spacing:-0.04em;
    }

    .hk-language-hero__subtitle{
        max-width:310px;
        margin:0;
        font-size:.92rem;
        line-height:1.65;
    }
}
/*----------------------------------------------------------
Language Grid
----------------------------------------------------------*/

.hk-language-grid-section{
    max-width:1200px;
    margin:0 auto 96px;
    padding:0 24px;
}

.hk-language-section-head{
    max-width:1200px;
    margin:0 auto 30px;
    text-align:left;
    border-top:1px solid rgba(15,23,42,.06);
    padding-top:56px;
}



.hk-language-section-head h2{
    margin:0 0 8px;
    font-size:clamp(1.8rem,3vw,2.5rem);
    line-height:1.15;
    color:#102a43;
}

.hk-language-section-head p{
    margin:0;
    font-size:1.05rem;
    line-height:1.8;
    color:#52606d;
}

.hk-language-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:22px;
}

.hk-language-card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:250px;
    padding:26px;
    border:1px solid rgba(15,23,42,.07);
    border-radius:30px;
    background:
        radial-gradient(circle at top left, rgba(31,143,103,.10), transparent 34%),
        linear-gradient(145deg, #ffffff, #fbfdfc);
    text-decoration:none;
    box-shadow:0 18px 45px rgba(15,23,42,.055);
    transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
    overflow:hidden;
}

.hk-language-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(135deg, rgba(31,143,103,.08), rgba(255,255,255,0));
    opacity:0;
    transition:.25s ease;
}

.hk-language-card:hover{
    transform:translateY(-5px);
    box-shadow:0 24px 60px rgba(15,23,42,.09);
    border-color:rgba(31,143,103,.22);
}

.hk-language-card:hover::before{
    opacity:1;
}

.hk-language-card:hover .hk-language-card__icon{
    transform:scale(1.08);
    background:rgba(31,143,103,.16);
}

.hk-language-card > *{
    position:relative;
    z-index:2;
}

.hk-language-card__icon{
    width:46px;
    height:46px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:18px;
    background:rgba(31,143,103,.10);
    margin-bottom:24px;
    font-size:20px;
    transition:transform .25s ease, background .25s ease;
}

.hk-language-card__native{
    display:block;
    margin-bottom:6px;
    font-size:clamp(1.45rem,2vw,1.8rem);
    line-height:1.18;
    letter-spacing:-0.02em;
    color:#102a43;
}

.hk-language-card__english{
    display:block;
    margin-bottom:22px;
    color:#16805c;
    font-size:.95rem;
    font-weight:900;
}

.hk-language-card__desc{
    display:none;
}

.hk-language-card__count{
    display:inline-flex;
    width:max-content;
    max-width:100%;
    margin-top:auto;
    padding:8px 13px;
    border-radius:999px;
    background:#f1f5f9;
    color:#334155;
    font-size:.82rem;
    font-weight:900;
}

.hk-language-card__cta{
    display:inline-flex;
    align-items:center;
    width:max-content;
    margin-top:18px;
    color:#0f7a55;
    font-size:.95rem;
    font-weight:950;
}

.hk-language-card.is-rtl{
    text-align:right;
}

.hk-language-card.is-rtl .hk-language-card__icon,
.hk-language-card.is-rtl .hk-language-card__count,
.hk-language-card.is-rtl .hk-language-card__cta{
    margin-left:auto;
}

/*----------------------------------------------------------
Language Grid Responsive
----------------------------------------------------------*/

@media (max-width:1024px){
    .hk-language-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr));
    }
}

@media (max-width:768px){
    .hk-language-grid-section{
        padding:0 16px;
        margin-bottom:72px;
    }

    .hk-language-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:14px;
    }

    .hk-language-card{
        min-height:210px;
        padding:20px;
        border-radius:22px;
    }

    .hk-language-card__native{
        font-size:1.3rem;
    }
}

@media (max-width:520px){
    .hk-language-grid{
        grid-template-columns:1fr;
    }
}
/*=========================================================
Support CTA
=========================================================*/

.hk-language-support{

    max-width:1240px;

    margin:100px auto 0;

    padding:0 24px;
}

.hk-language-support__inner{

    position:relative;

    overflow:hidden;

    padding:56px;

    border-radius:36px;

    background:
        radial-gradient(circle at top right, rgba(31,143,103,.10), transparent 35%),
        linear-gradient(135deg,#ffffff,#f8fbfa);

    border:1px solid rgba(15,23,42,.06);

    box-shadow:0 24px 70px rgba(15,23,42,.06);
}

.hk-language-support__content{

    max-width:620px;

    margin:0 auto 42px;

    text-align:center;
}

.hk-language-support__eyebrow{

    display:inline-flex;

    align-items:center;

    gap:8px;

    padding:8px 16px;

    margin-bottom:18px;

    border-radius:999px;

    background:#eef7f4;

    color:#16805c;

    font-weight:800;

    font-size:.85rem;
}

.hk-language-support__content h2{

    margin:0 0 14px;

    font-size:clamp(2rem,4vw,3rem);

    line-height:1.1;

    color:#102a43;
}

.hk-language-support__content p{

    margin:0;

    color:#52606d;

    font-size:1.05rem;

    line-height:1.8;
}

.hk-language-support__actions{
    display:grid;
    grid-template-columns:1fr;
    gap:14px;
    max-width:860px;
    margin:0 auto;
}

.hk-language-support__card{
    display:grid;
    grid-template-columns:56px 1fr;
    grid-template-areas:
        "icon title"
        "icon desc"
        "icon cta";

         align-items:start;

    gap:4px 18px;
    padding:18px 20px;
    text-decoration:none;
    color:inherit;
    border-radius:24px;
    background:rgba(255,255,255,.88);
    border:1px solid rgba(15,23,42,.07);
    transition:.25s ease;
    box-shadow:0 12px 34px rgba(15,23,42,.045);
}

.hk-language-support__card span{
    grid-area:icon;
}

.hk-language-support__card strong{
    grid-area:title;
    margin-top:2px;
}

.hk-language-support__card:hover{

    transform:translateY(-5px);

    border-color:rgba(31,143,103,.20);

    box-shadow:0 24px 60px rgba(15,23,42,.08);
}

.hk-language-support__card span{

    width:52px;

    height:52px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:18px;

    background:#eef7f4;

    font-size:24px;
}

.hk-language-support__card strong{

    font-size:1.15rem;
font-weight:800;

    color:#102a43;
}

.hk-language-support__card small{

    grid-area:desc;

    margin-top:2px;

    color:#64748b;

    font-size:.92rem;

    line-height:1.5;
}
.hk-language-support__card em{

    grid-area:cta;

    margin-top:4px;

    font-style:normal;

    font-weight:800;

    color:#0f7a55;

    width:max-content;
}

/* Mobile */

@media (max-width:768px){

    .hk-language-support{

        padding:0 16px;
    }

    .hk-language-support__inner{

        padding:34px 22px;

        border-radius:28px;
    }

    .hk-language-support__actions{

        grid-template-columns:1fr;

        gap:16px;
    }

    .hk-language-support__content{

        margin-bottom:28px;
    }
    .hk-language-support__card{

    grid-template-columns:48px 1fr;

    grid-template-areas:
        "icon title"
        "icon desc"
        "icon cta";
}

}