@media (min-width: 992px) {
    .about-gallery .rect {
        height: 220px;
    }
    .about-gallery .circle {
        width: 180px;
        height: 180px;
    }
    .about-gallery .square {
        width: 240px;
        height: 170px;
    }
}

@media (min-width: 1601px) {
    .footer-slanted .container{
        max-width: 1600px;
    }
}

@media (max-width: 1600px){
    .header-logo {
        max-width: 120px;
    }

    .hk-navbar .nav-link img {
        width: 26px;
        height: 26px;
    }

    .hk-navbar .nav-link,
    .book-appointment-btn{
        padding: 8px 16px !important;
        gap: 6px;
        font-size: 16px;
        line-height: 24px;
    }

    .hk-navbar-sticky.hk-navbar .nav-link,
    .hk-navbar-sticky .book-appointment-btn{
        padding: 8px 12px !important;
        font-size: 14px;
        line-height: 24px;
    }

    .hk-navbar-sticky.hk-navbar .nav-link img,
    .hk-navbar-sticky .book-appointment-btn svg{
        width: 22px;
        height: 22px;
    }

    .hero-banner-left-side {
        /* padding: 120px 0 45px; */
        max-width: 600px;
    }

    .hero-title {
        font-size: 64px;
        line-height: 74px;
    }

    .hero-banner-text {
        font-size: 22px;
        line-height: 36px;
        margin: 35px 0;
    }

    .our-partners-title {
        font-size: 28px;
        line-height: 44px;
    }

    .common-padding {
        padding: 65px 0;
    }

    .header-section-center{
        row-gap: 12px;
    }

    .cmn-section-title {
        font-size: 44px;
        line-height: 58px;
    }

    .custom-tabbing-wrapper{
        margin-bottom: 100px;
    }

    .pill-tabs .nav-link {
        min-width: 270px;
        min-height: 56px;
        font-size: 24px;
        line-height: 30px;
    }

    .tabbing-wrapper{
        column-gap: 80px;
        justify-content: space-between;
    }

    .tabbing-image-wrapper {
        max-width: 530px;
    }

    .common-sub-section-title,
    .section-content,
    .tabbing-listing-title,
    .check-list{
        font-size: 24px;
        line-height: 30px;
    }

    .section-content{
        margin-bottom: 55px;
    }

    .tabbing-listing-title{
        margin-bottom: 30px;
    }

    .check-list{
        row-gap: 15px;
        margin-bottom: 40px;
    }

    .check-list li{
        padding: 0 0 0 38px;
    }

    .scrolling-section{
        padding: 20px 0;
    }

    .scrolling-text-wrapper li{
        font-size: 24px;
        line-height: 32px;
    }

    .counter-seprator {
        margin: 20px 0 15px;
    }

    .student-image {
        width: 250px;
    }

    .cta-section-wrap{
        max-width: calc(100% - 280px);
        gap: 20px;
    }

    .contact-form-spacing {
        margin-bottom: 60px;
        padding-bottom: 40px;
    }

    .newsletter-cta-section {
        padding-bottom: 60px;
    }

    .fs-hero:before, .fs-hero:after{
        width: 50%;
    }

    .fs-hero-left .hero-banner-text,
    .is-hero-left .hero-banner-text{
        margin: 0;
    }

    .edp-bottom-strip-section {
        margin-bottom: 100px;
    }

    .edp-hero:before{
        width: 80%;
    }

    .is-apply-section {
        margin-bottom: 120px;
    }

    .ips-counters-section {
        margin-bottom: 90px;
    }

    .lls-counter-section {
        margin-bottom: 120px;
    }
}

@media (max-width: 1399px){

    .sfl-hero{
        background-size: unset;
    }

    .sfl-hero:before{
        width: 85%;
    }

    .hk-navbar .nav-link,
    .book-appointment-btn{
        min-height: 48px;
    }

    .hk-navbar .nav-link img,
    .book-appointment-btn svg{
        width: 22px;
        height: 22px;
    }

    .hero-banner-left-side {
        /* padding: 100px 0 45px; */
        max-width: 540px;
    }

    .hero-banner-right-side {
        max-width: 530px;
    }

    .slider-box{
        width: 255px;
    }

    .header-section-center {
        row-gap: 8px;
        margin-bottom: 45px;
    }

    .cmn-section-title {
        font-size: 40px;
        line-height: 54px;
    }

    .cmn-section-sub {
        font-size: 26px;
        line-height: 32px;
    }

    .custom-tabbing-wrapper {
        margin-bottom: 80px;
    }

    .pill-tabs .nav-link {
        min-width: 240px;
        min-height: 52px;
        font-size: 22px;
        line-height: 28px;
    }

    .tabbing-image-wrapper {
        max-width: 460px;
    }

    .tabbing-content-wrapper {
        max-width: calc(100% - 560px);
    }

    .img-decor::before{
        left: -10px;
    }

    .img-decor::after{
        left: 10px;
    }

    .about-rect-img {
        max-width: 270px;
    }

    .about-top-img:before {
        width: 120px;
        height: 120px;
        left: -40px;
        top: -44px;
    }

    .cmn-curv-img {
        max-width: 220px;
    }

    .about-bottom-img:before {
        width: 100px;
        height: 100px;
        bottom: -34px;
        right: -30px;
    }

    .about-mission-vision-wrap{
        column-gap: 24px;
        margin-top: 50px;
    }

    .abt-msn-vsn-title{
        background-size: 15px;
        padding: 0 0 0 36px;
        margin-bottom: 20px;
    }

    .abt-msn-vsn-content {
        font-size: 20px;
        line-height: 32px;
    }

    .counter-numbers {
        font-size: 50px;
        line-height: 62px;
    }

    .language-card img {
        height: 335px;
    }

    .language-controls{
        margin-top: 60px;
    }

    .slick-arrow{
        bottom: -82px;
        width: 34px;
        height: 34px;
        background-size: 24px;
    }

    .testi-slick .slick-arrow{
        bottom: -60px;
        width: 34px;
        height: 34px;
        background-size: 24px;
    }

    .study-grid-wrapper {
        gap: 30px;
    }

    .study-grid-item {
        padding: 24px;
    }

    .study-grid-image {
        width: 64px;
        height: 64px;
        margin-bottom: 26px;
    }

    .testi-card{
        padding: 18px;
        margin: 14px;
    }

    .testi-head {
        margin-bottom: 18px;
        padding-bottom: 18px;
    }

    .testi-avatar {
        width: 48px;
        height: 48px;
    }

    .testi-name {
        font-size: 18px;
    }

    .testi-stars {
        font-size: 20px;
    }

    .testi-text {
        font-size: 16px;
        line-height: 28px;
    }

    .contact-description {
        font-size: 18px;
        margin-bottom: 38px;
    }

    .contact-details {
        gap: 15px;
        margin: 32px 20px;
    }

    .student-image {
        width: 340px;
        bottom: 0;
        left: 20px;
    }

    .newletter-cta-bg{
        padding: 0;
    }

    .newsletter-cta-content-wrapper {
        max-width: 100%;
    }

    .footer-logo {
        width: 110px;
        margin-bottom: 12px;
    }

    .footer-social-icons {
        gap: 16px;
        margin-top: 20px;
    }

    .social-icon-wrap {
        width: 38px;
        height: 38px;
    }

    .social-icon-wrap img {
        width: 24px;
        height: 24px;
    }

    .btn-accent,
    .btn-accent-alt{
        font-size: 18px;
        line-height: 28px;
        min-width: 175px;
        min-height: 46px;
    }

    .featstats-bar{
        flex-wrap: wrap;
    }

    .featstats-mission{
        width: 100%;
        flex: auto;
    }

    .cta-section-wrap{
        max-width: calc(100% - 320px);
        flex-direction: column;
        align-items: flex-start;
        padding: 30px;
    }

    .tth-tab-skills-grid{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .fs-tab-skill-card{
        padding: 16px 8px;
    }

    .tth-tab-mosaic {
        flex: 0 0 300px;
        height: 300px;
    }

    .fs-tab-skill-icon {
        width: 42px;
        height: 42px;
        font-size: 18px;
    }

    .fs-tab-highlight-item {
        align-items: center;
        justify-content: center;
        text-align: center;
        flex-direction: column;
        gap: 14px;
        padding: 0 12px;
    }

    .interp-tab-grid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 12px;
    }

    .interp-service-card{
        padding: 20px 16px;
    }

    .interp-service-icon {
        width: 52px;
        height: 52px;
        font-size: 24px;
        margin-bottom: 12px;
    }

    .trans-other-grid {
        grid-template-columns: repeat(5, 1fr);
    }

    .welcome-content .cmn-section-title{
        font-size: 40px;
        line-height: 50px;
    }

    .welcome-content .cmn-section-sub {
        font-size: 22px;
        line-height: 28px;
    }

    .intro-lead {
        font-size: 18px;
        line-height: 30px;
    }

    .welcome-kpis{
        gap: 10px;
    }

    .welcome-kpi-icon{
        width: 42px;
        height: 42px;
        font-size: 18px;
    }

    .welcome-kpi-number {
        font-size: 24px;
        line-height: 28px;
    }

    .vm-card{
        padding: 20px;
        gap: 20px;
    }

    .vm-grid-icon {
        width: 100px;
        height: 100px;
    }

    .vm-icon {
        width: 38px;
        height: 38px;
        font-size: 18px;
    }

    .empower-title {
        font-size: 44px;
        letter-spacing: 0;
    }

    .wwd-grid {
        gap: 60px;
    }

    .about-right-image-wrap {
        max-width: calc(100% - 580px);
    }

    .wwd-steps {
        row-gap: 20px;
    }

    .wwd-step-icon-wrap {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }
    
    .wwd-step-img {
        width: 120px;
        height: 80px;
    }

    .global-local-title {
        font-size: 38px;
        line-height: 48px;
    }

    .global-local-sub {
        font-size: 20px;
        line-height: 28px;
    }

    .future-cta-title {
        font-size: 36px;
        line-height: 46px;
    }

    .cc-highlight-icon {
        width: 60px;
        height: 60px;
        font-size: 30px;
    }

    .edp-path-fieldset{
        margin: -60px 0 20px 0;
    }

    .edp-path-icon {
        width: 62px;
        height: 62px;
        font-size: 26px;
    }

    .edp-path-title {
        font-size: 20px;
        line-height: 28px;
    }

    .edp-impact-stats{
        background-position: bottom -75px center;
    }

    .is-hero.fs-hero:before{
        width: 60%;
        background: linear-gradient(90deg, rgba(255, 255, 255, 0.85) 80%, rgba(255, 255, 255, 0) 100%);
    }

    .fs-hero-bg.is-hero-bg {
        background-position: right;
    }

    .fs-hero.ttp-hero{
        height: 500px;
    }

    .ttp-check-list li{
        align-items: flex-start;
        gap: 6px;
    }

    .ttp-check-list li i{
        font-size: 16px;
        margin-top: 1px;
    }

    .ttp-quote-box{
        padding: 26px 20px
    }

    .ttp-panel-card{
        padding: 20px 12px;
    }

    .ttp-career-item p {
        font-size: 14px;
        line-height: 24px;
    }

    .ttp-bottom-section {
        margin-bottom: 120px;
    }

    .contact-form-spacing {
        margin-bottom: 120px;
    }

    .ips-type-title { font-size: 20px; }
    .ips-type-desc  { font-size: 16px; }
    .ips-counter-stat-number { font-size: 42px; }
    .ips-why-list li { font-size: 14px; }
    .ips-map-placeholder { height: 360px; }

    .ips-counters-section {
        margin-bottom: 160px;
    }

    .trl-rare-grid { row-gap: 10px; }
    .trl-rare-item{width: calc(33% - 10px); flex: auto;}
    .trl-major-count { font-size: 20px; }
    .trl-major-count .red-text { font-size: 26px; }
    .trl-rare-title { font-size: 20px; }
    .trl-rare-native { font-size: 18px; }
    /* types — 1399 */
    .trl-type-title { font-size: 18px; }
    
    .trl-feature-grid-item span {
        font-size: 16px;
    }

    .trl-cbar-icon {
        width: 42px;
        height: 42px;
        font-size: 20px;
    }

    .trl-cbar-number {
        font-size: 26px;
    }

    .trl-counter-bar-section {
        margin-bottom: 150px;
    }

    .lls-counter-number{
        font-size: 36px;
    }

    .lls-counter-section {
        margin-bottom: 150px;
    }

    .career-job-name {
        font-size: 24px;
    }

    .career-job-meta-item{
        font-size: 14px;
    }

    .career-life-text{
        padding: 24px;
    }

    .career-life-cell-title {
        font-size: 20px;
        margin-bottom: 8px;
    }

    .career-job-details h3 {
        font-size: 20px;
        line-height: 28px;
    }

    .career-job-details p {
        font-size: 16px;
    }

    .career-job-details ul li {
        padding-left: 12px;
        font-size: 14px;
        line-height: 1.5;
    }

    .career-job-details ul li::before{
        top: 7px;
    }

    .bd-title {
        font-size: 32px;
    }

    .bd-body p {
        margin-bottom: 15px;
    }

    .fsl-cta-enrol .newsletter-cta-feature{
        min-width: 240px;
    }
}

@media (max-width: 1199px){

    .hk-navbar-sticky.hk-navbar .nav-link img, 
    .hk-navbar-sticky .book-appointment-btn svg{
        width: 20px;
        height: 20px;
    }

    .hk-navbar{
        min-height: 66px;
    }

    .topbar-left-side{
        column-gap: 12px;
    }

    .topbar-right-side{
        column-gap: 10px;
    }

    .social-icons{
        width: 20px;
        height: 20px;
    }

    .header-logo {
        max-width: 100px;
    }

    .hk-navbar .nav-link,
    .book-appointment-btn {
        padding: 6px 10px !important;
        gap: 4px;
        font-size: 14px;
        line-height: 22px;
        min-height: 44px;
    }

    .dropdown-item {
        column-gap: 6px;
        padding: 6px 8px;
    }

    .dropdown-menu-icon-wrap {
        width: 28px;
        height: 28px;
    }

    .dropdown-menu-icon-wrap svg{
        width: 18px;
        height: 18px;
    }

    .dropdown-menu-heading {
        width: calc(100% - 34px);
        white-space: normal;
    }

    .dropdown-menu{
        min-width: 160px;
    }

    .hero-banner-left-side {
        /* padding: 80px 0 40px; */
        max-width: 440px;
    }

    .hero-banner-right-side {
        max-width: 440px;
    }

    .hero-sub-tag {
        padding: 4px 12px;
        margin-bottom: 16px;
        font-size: 13px;
        line-height: 18px;
    }

    .hero-title {
        font-size: 54px;
        line-height: 66px;
    }

    .hero-banner-text {
        font-size: 20px;
        line-height: 32px;
        margin: 30px 0;
    }

    .btn-accent, .btn-accent-alt {
        font-size: 16px;
        line-height: 26px;
        min-width: 160px;
        min-height: 42px;
    }

    .our-partners-wrapper {
        margin-top: 40px;
        row-gap: 8px;
    }

    .our-partners-title {
        font-size: 24px;
        line-height: 40px;
    }

    .hk-logo-marquee {
        height: 44px;
        padding: 0px 12px 0px 12px
    }

    .hk-logo-marquee img{
        object-fit: contain;
        height: 100%;
    }

    .slider-box {
        width: 210px;
    }

    .common-padding {
        padding: 55px 0;
    }

    .header-section-center {
        row-gap: 4px;
        margin-bottom: 35px;
    }

    .cmn-section-title {
        font-size: 36px;
        line-height: 48px;
        letter-spacing: -2px;
    }

    .cmn-section-sub{
        font-size: 24px;
        letter-spacing: -1px;
    }

    .custom-tabbing-wrapper{
        column-gap: 10px;
        margin-bottom: 65px;
    }

    .pill-tabs .nav-link {
        min-width: 210px;
        min-height: 48px;
        font-size: 20px;
        line-height: 26px;
    }

    .tabbing-wrapper{
        column-gap: 40px;
    }

    .tabbing-image-wrapper {
        max-width: 420px;
    }

    .tabbing-content-wrapper {
        max-width: calc(100% - 500px);
    }

    .common-sub-section-title, .section-content, .tabbing-listing-title, .check-list {
        font-size: 22px;
        line-height: 28px;
    }

    .section-content {
        margin-bottom: 40px;
    }

    .check-list li {
        padding: 0 0 0 32px;
        background-size: 14px;
    }

    .about-left-image-wrap{
        column-gap: 20px;
        row-gap: 15px;
    }

    .about-rect-img {
        max-width: 250px;
    }

    .cmn-curv-img {
        max-width: 180px;
    }

    .about-left-image-wrap, .about-right-image-wrap {
        max-width: 450px;
    }

    .about-top-img:before {
        width: 100px;
        height: 100px;
        left: -28px;
        top: -28px;
    }

    .about-bottom-radius-img:before {
        right: -15px;
        top: 70px;
    }

    .about-top-radius-img:before {
        width: 60px;
        height: 60px;
        top: 40px;
        left: -26px;
    }

    .about-bottom-img:before {
        width: 80px;
        height: 80px;
        bottom: -20px;
        right: -24px;
    }

    .about-mission-vision-wrap {
        column-gap: 18px;
        margin-top: 35px;
    }

    .abt-msn-vsn-title {
        background-size: 12px;
        padding: 0 0 0 30px;
        margin-bottom: 12px;
    }

    .counter-content {
        padding: 30px 18px;
    }

    .counter-content-grid{
        max-width: 240px;
    }

    .counter-numbers {
        font-size: 42px;
        line-height: 54px;
        margin-bottom: 10px;
    }

    .counter-title {
        font-size: 16px;
        line-height: 22px;
    }

    .language-slick .language-card {
        margin: 0 4px;
    }

    .language-card img {
        height: 310px;
    }

    .language-label{
        font-size: 20px;
        line-height: 28px;
        padding: 8px 20px;
        width: calc(100% - 36px);
    }

    .language-controls {
        margin-top: 45px;
    }

    .slick-arrow {
        bottom: -62px;
        width: 26px;
        height: 26px;
        background-size: 20px;
    }

    .slick-prev,
    .testi-slick .slick-prev{
        margin-left: -60px;
    }

    .slick-next,
    .testi-slick .slick-next{
        margin-right: -60px;
    }

    .testi-slick .slick-arrow{
        bottom: -54px;
        width: 26px;
        height: 26px;
        background-size: 20px;
    }

    .study-grid-wrapper {
        gap: 24px;
    }

    .study-grid-item {
        padding: 18px;
    }

    .study-grid-image {
        width: 56px;
        height: 56px;
        margin-bottom: 22px;
    }

    .blog-overlay{
        left: 16px;
        right: 16px;
    }

    .blog-title {
        font-size: 18px;
    }

    .blog-author img {
        width: 32px;
        height: 32px;
    }

    .testi-card {
        padding: 14px;
        margin: 10px;
    }

    .testi-head {
        margin-bottom: 14px;
        padding-bottom: 14px;
    }

    .testi-avatar {
        width: 42px;
        height: 42px;
    }

    .testi-stars {
        font-size: 18px;
    }

    .contact-content {
        gap: 40px;
    }

    .contact-details {
        gap: 10px;
        margin: 24px 16px;
    }

    .contact-link {
        font-size: 18px;
    }

    .contact-item {
        gap: 18px;
    }

    .contact-item span {
        font-size: 18px;
    }

    .contact-map {
        height: 220px;
    }

    .footer-logo {
        width: 90px;
        margin-bottom: 8px;
    }

    .footer-description {
        font-size: 14px;
    }

    .footer-social-icons {
        gap: 12px;
    }

    .social-icon-wrap {
        width: 32px;
        height: 32px;
    }

    .social-icon-wrap img {
        width: 20px;
        height: 20px;
    }

    .footer-column h3 {
        font-size: 18px;
        line-height: 26px;
    }

    .footer-column ul{
        row-gap: 8px;
    }

    .footer-column ul li a {
        font-size: 14px;
    }

    .footer-column ul.footer-link-badge-wrapper {
        row-gap: 6px;
        column-gap: 6px;
    }

    .footer-column ul.footer-link-badge-wrapper li a{
        padding: 3px 12px;
    }

    .contact-form-spacing {
        margin-bottom: 40px;
    }

    .newsletter-cta-section {
        padding-bottom: 60px;
    }

    .footer-form-submit{
        font-size: 13px;
        padding: 2px 8px;
    }

    .form-group label {
        margin-bottom: 10px;
    }

    .form-group {
        margin-bottom: 22px;
    }

    .flp-banner-title {
        font-size: 38px;
    }

    .flp-section-title {
        font-size: 26px;
    }

    /* FLP — 1199px: lang cards wrap to 2-col, dual section stacks */
    .flp-lang-card {
        width: calc(50% - 10px);
    }

    .flp-why-icon,
    .flp-learn-icon {
        width: 48px;
        height: 48px;
        font-size: 24px;
    }    

    /* Why grid 4-col on large tablet */
    .flp-why-grid .col:nth-child(n) {
        flex: 0 0 25%;
        max-width: 25%;
    }

    /* Programme cards: 3-col stays but reduce padding */
    .flp-prog-card {
        padding: 22px 18px 18px;
    }

    /* Learn grid 3-col on large tablet */
    .flp-why-learn .row .col {
        flex: 0 0 33.333%;
        max-width: 33.333%;
    }

    /* CTA card wraps at 1199 */
    .common-inner-cta-card {
        flex-wrap: wrap;
        gap: 20px;
    }

    .common-cta-center-sec {
        width: 100%;
    }

    .common-cta-end-sec {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }

    .fsl-banner-title {
        font-size: 46px;
    }

    .fsl-banner-title span {
        font-size: 32px;
    }

    .features-section .study-grid-item{
        gap: 16px;
        padding: 20px;
        flex-direction: column;
    }

    .features-section .study-grid-side {
        flex-direction: row;
        flex: 1;
        min-height: auto;
    }

    .features-section .study-grid-image{
        width: 60px;
        height: 60px;
    }

    .features-section .study-grid-content {
        gap: 20px;
    }

    .features-section .study-title:before {
        bottom: -12px;
    }

    .featstats-item{
        gap: 15px;
    }

    .featstats-icon{
        font-size: 36px;
    }

    .featstats-value {
        font-size: 28px;
        line-height: 36px;
    }

    .tab-hero-inner{
        gap: 40px;
    }

    .tab-hero-content {
        flex: 0 0 450px;
        max-width: 450px;
    }

    .sfl-tab-programs-grid {
        gap: 10px;
    }

    .sfl-tab-program-card{
        padding: 20px 12px;
    }

    .sfl-tab-program-icon{
        width: 46px;
        height: 46px;
        margin-bottom: 14px;
    }

    .sfl-tab-program-title {
        font-size: 14px;
        line-height: 20px;
    }

    .sfl-tab-program-desc {
        font-size: 12px;
        line-height: 20px;
    }

    .tab-cta-inner {
        gap: 24px;
    }

    .sfl-tab-feature-item {
        flex-direction: column;
        text-align: center;
        padding: 0 12px;
        height: 100%;
    }

    .tab-cta-lead {
        gap: 14px;
        flex: 0 0 30%;
        max-width: 30%;
    }

    .tab-cta-icon-wrap {
        width: 44px;
        height: 44px;
        font-size: 20px;
    }

    .tab-cta-title {
        font-size: 20px;
        line-height: 28px;
    }

    .nservices-tab-content {
        margin-bottom: 0;
    }

    .counter-content-grid{
        padding: 0 18px;
    }

    .counter-content-grid img {
        width: 68px;
        height: 68px;
    }

    .cmn-section-title::after {
        bottom: 5px;
    }

    .pathways-card-icon {
        left: 18px;
        bottom: -20px;
        width: 42px;
        height: 42px;
    }

    .pathways-card-body {
        padding: 30px 16px 20px;
    }

    .pathways-card-btn {
        padding: 8px 16px;
        font-size: 14px;
        line-height: 22px;
    }

    .pathways-view-all {
        min-width: 240px;
        min-height: 52px;
        padding: 0 20px;
        font-size: 16px;
        line-height: 26px;
    }

    .contact-form-details {
        gap: 40px;
    }

    .cf-steps-heading {
        margin-bottom: 15px;
        font-size: 26px;
        line-height: 34px;
    }

    .cf-step {
        gap: 14px;
        padding: 15px 0;
    }

    .contact-offices {
        grid-template-columns: repeat(2, 1fr);
    }

    .student-image {
        width: 280px;
    }

    .cta-section-wrap {
        max-width: calc(100% - 260px);
    }

    .footer-row-wrap .footer-col:nth-child(2){
        border-right: 0px;
    }

    .footer-col:nth-last-child(-n + 2) {
        padding-top: 40px;
    }

    .footer-counter-content {
        column-gap: 10px;
    }

    .footer-counter-title {
        font-size: 13px;
        line-height: 18px;
    }

    .footer-counter-numbers {
        font-size: 26px;
        line-height: 36px;
    }

    .footer-made-with-text,
    .footer-page-link,
    .footer-center-text{
        font-size: 13px;
        line-height: 18px;
    }

    .fs-tab-skills-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 10px;
    }

    .ent-philosophy-item {
        align-items: center;
        flex-direction: column;
        justify-content: center;
        text-align: center;
        gap: 12px;
    }

    .sfl-why-card{
        padding: 25px 20px;
    }

    .sfl-why-icon-wrap{
        width: 50px;
        height: 50px;
        font-size: 22px;
    }

    .sfl-prog-body {
        padding: 30px 20px 25px;
    }

    .sfl-prog-title {
        font-size: 24px;
        line-height: 32px;
        margin-bottom: 20px;
    }

    .sfl-prog-btn{
        font-size: 14px;
        padding: 12px 14px;
    }

    .inner-banner-xl .inner-banner-wrapper {
        min-height: 350px;
        padding: 40px 15px;
    }

    .inner-banner-xl .inner-banner-title {
        font-size: 58px;
        line-height: 66px;
    }

    .welcome-kpis{
        padding: 12px;
    }

    .welcome-kpi-number {
        font-size: 20px;
        line-height: 25px;
    }

    .empower-bg{
        min-height: 460px;
    }

    .empower-content{
        min-height: 460px;
    }

    .empower-title {
        font-size: 40px;
    }

    .highlight-card{
        padding: 20px 16px;
        gap: 12px;
    }

    .highlight-icon {
        width: 42px;
        height: 42px;
        font-size: 20px;
    }

    .highlights-stat-item{
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .highlights-stat-content {
        width: 100%;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .wwd-intro .section-content{
        font-size: 18px;
        line-height: 26px;
    }

    .wwd-grid{
        flex-direction: column;
        align-items: center;
    }

    .about-right-image-wrap{
        max-width: 100%;
    }

    .wwd-steps {
        row-gap: 20px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        column-gap: 20px;
    }

    .global-local-title {
        font-size: 34px;
        line-height: 44px;
    }

    .future-cta-title {
        font-size: 32px;
        line-height: 42px;
    }

    .future-cta-sub {
        font-size: 20px;
        line-height: 28px;
    }

    .future-cta-feature-icon{
        width: 42px;
        height: 42px;
        font-size: 20px;
    }

    .highlights-stat-number {
        font-size: 22px;
        line-height: 30px;
    }

    .flp-dual-content-col{
        width: 100%;
    }

    .ep-level-card{
        padding: 20px;
    }

    .ep-level-title{
        font-size: 18px;
    }

    .english-programme-cta .common-inner-cta-card{
        flex-wrap: nowrap;
    }

    .english-programme-cta .common-inner-cta-card:before{
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color: rgb(0 65 107 / 50%);
    }

    .english-programme-cta .common-inner-cta-illus,
    .english-programme-cta .common-cta-center-sec{
        position: relative;
        z-index: 2;
    }

    .cc-benefit-icon {
        width: 44px;
        height: 44px;
        font-size: 24px;
    }

    .cc-benefit-label {
        font-size: 15px;
        line-height: 22px;
    }

    .cc-benefit-item {
        gap: 8px;
        padding: 0 8px;
    }

    .page-template-care-connect-programme .common-inner-cta-card{
        flex-wrap: nowrap;
    }

    .page-template-care-connect-programme .common-inner-cta-illus{
        max-width: 220px;
    }

    .page-template-care-connect-programme .common-cta-center-sec{
        width: calc(100% - 240px);
    }

    .page-template-care-connect-programme .common-inner-cta-card.care-connect-cta-secondary{
        flex-wrap: wrap;
    }

    .inner-cta-title{
        font-size: 24px;
    }

    .fs-hero-bg{
        padding: 55px 0;
    }

    .fs-fourcee-card{
        max-width: 100%;
    }

    .fs-fourcee-list{
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 20px;
    }

    .fs-fourcee-item:not(:last-child){
        border-bottom: 0;
        margin: 0;
        padding: 0;
    }

    .fs-campus-icon {
        font-size: 44px;
    }

    .fs-campus-label strong {
        font-size: 18px;
        line-height: 26px;
    }

    .fs-bridge-text {
        font-size: 18px;
        line-height: 28px;
    }

    .fs-hero-row-bridge{
        margin-top: 30px;
    }

    .fs-skill-grid .col{
        width: 25%;
    }

    .fa-impact-row{
        justify-content: center;
        column-gap: 40px;
    }

    .fs-impact-icon-wrap{
        width: 50px;
        height: 50px;
        font-size: 24px;
    }

    .fs-impact-number {
        font-size: 26px;
        line-height: 34px;
    }

    .fs-impact{
        margin-top: 40px;
    }

    .edp-hero-image {
        max-width: 300px;
    }

    .edp-fourcee-card .fs-fourcee-list {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .edp-incubation-title {
        font-size: 20px;
        line-height: 28px;
    }

    .edp-fourcee-icon {
        width: 42px;
        height: 42px;
        font-size: 20px;
    }

    .edp-fourcee-content {
        width: calc(100% - 56px);
    }

    .edp-fourcee-title {
        font-size: 20px;
        line-height: 28px;
    }

    .edp-path-icon {
        width: 52px;
        height: 52px;
        font-size: 22px;
    }

    .edp-path-badge{
        font-size: 11px;
        line-height: 17px;
        padding: 3px 10px;
    }

    .edp-path-fieldset {
        margin: -48px 0 15px 0;
    }

    .edp-path-card{
        padding: 20px 16px;
    }

    .edp-training-icon{
        width: 52px;
        height: 52px;
        font-size: 24px;
    }

    .edp-training-title {
        font-size: 20px;
        line-height: 28px;
    }

    .fs-why-check-icon{
        font-size: 18px;
    }

    .edp-impact-stats {
        padding: 40px 0 170px;
    }

    .is-journey-desc {
        max-width: 150px;
    }

    .is-journey-connector {
        flex: 0 0 20px;
    }

    .is-apply-bar {
        gap: 24px;
    }

    .is-offer-card {
        padding: 18px 16px;
    }

    .is-offer-icon {
        width: 44px;
        height: 44px;
        font-size: 18px;
    }

    .is-offer-title {
        font-size: 16px;
        line-height: 24px;
    }

    .is-journey-step {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .is-journey-icon {
        width: 60px;
        height: 60px;
        font-size: 26px;
    }

    .is-impact-stats .col-md-6:nth-child(3) .is-impact-stat {
        border-bottom: 1px solid rgba(0, 65, 107, 0.1);
    }

    .is-impact-stats .col-md-6:last-child .is-impact-stat {
        border-bottom: 0;
    }

    .is-apply-bar {
        padding: 20px 18px;
    }

    .is-apply-desc {
        font-size: 14px;
        line-height: 22px;
    }

    .is-journey-track {
        flex-wrap: wrap;
        justify-content: center;
        gap: 24px 16px;
    }

    .is-journey-connector {
        display: none;
    }

    .is-journey-step {
        flex: 0 0 calc(33.333% - 16px);
        max-width: calc(33.333% - 16px);
    }

    .is-journey-desc {
        max-width: 100%;
    }

    .is-impact-stat {
        border-right: 0;
        border-bottom: 1px solid rgba(0, 65, 107, 0.1);
    }

    .is-impact-stats .col-md-6:nth-child(3) .is-impact-stat,
    .is-impact-stats .col-md-6:nth-child(4) .is-impact-stat {
        border-bottom: 0;
    }

    .is-apply-bar {
        flex-direction: column;
        align-items: flex-start;
        padding: 24px;
    }

    .is-impact-icon {
        width: 52px;
        height: 52px;
        font-size: 24px;
    }

    .is-apply-section {
        margin-bottom: 40px;
    }

    .ttp-model-step-title {
        font-size: 16px;
    }

    .ttp-model-step p {
        font-size: 14px;
        line-height: 22px;
    }

    .ttp-model-icon {
        width: 42px;
        height: 42px;
        font-size: 20px;
    }

    .ttp-stats-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ttp-bottom-section {
        margin-bottom: 40px;
    }

    .ttp-career-grid{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        row-gap: 40px;
    }

    .ttp-career-item{
        width: calc(33% - 7px);
    }

    .fs-hero.ttp-hero {
        height: auto;
    }

    /* Types: 3 per row */
    .ips-types-section .col-lg-2 {
        flex: 0 0 33.333%;
        max-width: 33.333%;
    }

    /* Languages: horizontal stays but reduce padding */
    .ips-lang-cover-inner { padding: 22px 24px; gap: 22px; }

    /* Industries: 4 per row */
    .ips-industries-section .col-lg-2 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    /* Gallery */
    .ips-gallery-grid  { grid-template-columns: repeat(4, 1fr); height: 200px; }

    /* Why + Map: stack */
    .ips-map-placeholder { height: 300px; }

    .ips-counter-stat-number { font-size: 34px; }
    .ips-counters-section { padding: 44px 0; }

    .ips-feature-list{
        justify-content: center;
        row-gap: 20px;
    }
    
    .ips-feature-list .ep-feature-item{
        width: calc(33% - 5px);
    }

    .ips-fourcee-content h3 {
        font-size: 24px;
        line-height: 32px;
    }

    .ips-industry-card{
        padding: 18px 8px;
    }

    .ips-industry-icon {
        width: 44px;
        height: 44px;
        font-size: 20px;
    }

    .ips-industry-name {
        font-size: 14px;
    }

    .ips-counter-number {
        font-size: 32px;
    }

    .ips-counters-section {
        margin-bottom: 80px;
    }

    .trl-lang-card { padding: 24px 24px; }
    .trl-major-count { font-size: 18px; }
    .trl-major-count .red-text { font-size: 24px; }
    .trl-lang-name { font-size: 13px; }
    /* types — 1199 */
    .trl-type-icon  { width: 46px; height: 46px; font-size: 21px; border-radius: 10px; }

    .trl-feature-grid {
        column-gap: 10px;
    }

    .trl-feature-grid-item{
        padding: 12px 4px;
    }

    .trl-feature-grid-item span {
        font-size: 14px;
    }

    .trl-counter-bar-section {
        margin-bottom: 60px;
    }
    /* lls-what — 1199px */
    .lls-what-icon-box   { width: 100px; height: 100px; }
    .lls-what-icon-box > i { font-size: 36px; }
    .lls-what-title      { font-size: 22px; }
    .lls-what-desc       { font-size: 14px; }
    .lls-what-tag-icon   { width: 48px; height: 48px;  font-size: 22px;}
    .lls-what-tag-label  { font-size: 15px; }

    .lls-physical-content{
        padding: 25px;
    }

    .lls-equip-item{
        padding: 16px 6px;
    }

    .lls-equip-label {
        font-size: 15px;
    }

    .lls-benefits-grid{
        grid-template-columns: repeat(3, 1fr);
    }

    .lls-benefit-item:nth-child(-n + 3){
        border-bottom: 1px solid rgba(0, 65, 107, 0.08);
    }

    .lls-counter-section {
        margin-bottom: 100px;
    }

    /* career — 1199px */
    .career-job-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 16px;
    }

    .career-job-actions {
        width: 100%;
    }

    .career-contact-card {
        padding: 24px 28px;
    }

    .career-intro-title {
        font-size: 36px;
    }

    .career-life-cell {
        min-height: 220px;
    }

    .career-life-cell-title {
        font-size: 18px;
    }

    .career-life-text {
        padding: 24px 20px;
    }

    .career-life-different-title {
        font-size: 28px;
    }

    .blog-body {
        padding: 30px 18px 22px;
    }

    .contact-office-card {
        width: calc(40% - 10px);
    }

    .fsl-feature-tags{
        column-gap: 20px;
        row-gap: 10px;
    }

    .fsl-cefr-track{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        column-gap: 10px;
        row-gap: 20px;
    }

    .fsl-cefr-arrow{
        display: none;
    }

    .fsl-cefr-col{
        max-width: 100%;
        min-width: 100%;
    }

    .fsl-lang-strip-flags{
        grid-template-columns: repeat(2, 1fr);
    }

    .fsl-cta-enrol .newsletter-cta-feature {
        min-width: 220px;
    }

    .fsl-cta-enrol .newsletter-cta-feature-title{
        max-width: 80%;
        white-space: normal;
    }
}

@media (max-width: 991px){

    .mobile-toggle-menu{
        border: 0;
        padding: 0;
        opacity: 1;
        color: #fff;
        width: 30px;
        height: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .book-appointment-btn{
        margin-left: auto;
        margin-right: 15px;
        padding: 4px 16px !important;
        height: 44px;
        align-items: center;
        justify-content: center;
        gap: 10px;
    }

    .book-appointment-btn i {
        font-size: 22px;
    }

    .hk-navbar-sticky .book-appointment-btn {
        padding: 4px !important;
    }

    .mobile-toggle-menu:focus{
        outline: none;
        box-shadow: none;
    }

    .mobile-offcanvas-sidebar{
        background-color: var(--hk-deep);
    }

    .mobile-offcanvas-sidebar .offcanvas-header{
        padding: 15px;
        justify-content: flex-end;
    }

    .mobile-offcanvas-sidebar .offcanvas-header .btn-close{
        color: #fff;
        margin: 0;
        padding: 0;
        width: auto;
        height: auto;
        opacity: 1;
    }

    .mobile-offcanvas-sidebar .offcanvas-body{
        padding: 15px;
    }

    .mobile-offcanvas-sidebar .navbar-nav{
        row-gap: 15px;
    }

    .mobile-offcanvas-sidebar .nav-link{
        padding: 8px 12px;
        display: flex;
        align-items: center;
        column-gap: 5px;
        color: #fff;
        background: rgba(255, 255, 255, 0.07);
        border-radius: 20px;
        min-height: 44px;
    }

    .mobile-offcanvas-sidebar .nav-link img{
        width: 22px;
        height: 22px;
    }

    .mobile-offcanvas-sidebar .nav-link:focus{
        box-shadow: none;
    }

    .mobile-offcanvas-sidebar .nav-link:hover{
        color: #fff;
    }

    .mobile-offcanvas-sidebar .nav-link.dropdown-toggle::after{
        margin-left: auto;
    }

    .mobile-offcanvas-sidebar .dropdown-menu{
        position: relative !important;
        transform: none !important;
        top: 0;
        display: block;    
        max-height: 0;     
        overflow: hidden;  
        opacity: 0;        
        visibility: hidden;
        padding: 0;        
        transition: all 0.3s ease;
    }

    .mobile-offcanvas-sidebar .dropdown-menu.show{
        max-height: 500px; 
        opacity: 1;
        visibility: visible;
        padding: .5rem 0;    
    }

    .mobile-toggle-menu svg{
        width: 100%;
        height: 100%;
    }

    .hero-banner-right-side{
        display: none;
    }

    .hero-banner-left-side{
        padding: 50px 0;
        max-width: 100%;
    }

    .custom-tabbing-wrapper-mobile{
        margin-bottom: 60px;
    }

    .our-service-dropdown{
        background: rgba(246, 246, 246, 0.04);
        border: 1px solid rgba(255, 255, 255, 1);
        color: #e6f1f7;
        padding: 4px 40px 4px 16px;
        min-height: 48px;
        background-image: url(../images/dropdown-icon.svg);
        background-repeat: no-repeat;
        background-position: right 10px center;
    }

    .our-service-dropdown option {
        background-color: #fff;
        color: var(--hk-deep);
    }

    .our-service-dropdown:focus{
        border-color: rgba(255, 255, 255, 1);
        box-shadow: none;
    }

    .tabbing-wrapper{
        flex-direction: column;
        row-gap: 30px;
    }

    .tabbing-image-wrapper {
        max-width: 350px;
    }

    .tabbing-content-wrapper{
        max-width: 100%;
    }

    .scrolling-text-wrapper li {
        font-size: 20px;
        line-height: 29px;
    }

    .scrolling-text-wrapper li svg {
        width: 16px;
        height: 16px;
    }
 
    .about-us-grid-wrapper{
        flex-direction: column;
        row-gap: 30px;
    }

    .about-right-image-wrap{
        max-width: 100%;
    }

    .counter-content-grid {
        max-width: 180px;
    }

    .counter-numbers {
        font-size: 36px;
        line-height: 48px;
        margin-bottom: 6px;
    }

    .study-grid-wrapper{
        grid-template-columns: repeat(2, 1fr);
    }

    .cmn-section-sub {
        font-size: 22px;
    }

    .contact-content {
        gap: 25px;
    }

    .contact-description {
        font-size: 16px;
        margin-bottom: 30px;
    }

    .contact-details {
        gap: 8px;
        margin: 18px 0px;
    }

    .contact-item {
        gap: 12px;
    }

    .contact-item img{
        max-width: 16px;
        max-height: 18px;
    }

    .contact-item span {
        font-size: 16px;
        width: calc(100% - 32px);
        display: inline-flex;
    }

    .contact-map {
        height: 180px;
    }

    .newsletter-cta-content-wrapper {
        max-width: 100%;
        align-items: center;
        width: 100%;
    }

    .newsletter-cta-features {
        width: 100%;
        justify-content: center;
    }

    .newsletter-cta-feature {
        padding: 0 12px;
        min-width: 220px;
    }

    .footer-slanted:before{
        background-position: left -100px center;
    }

    .footer-copyright{
        font-size: 14px;
    }

    .empower-bg,
    .empower-content {
        min-height: 380px;
    }
    .empower-content {
        flex-direction: column;
        justify-content: center;
        text-align: center;
        gap: 32px;
        padding: 40px 0;
    }
    .empower-copy {
        max-width: 100%;
    }
    .empower-label {
        justify-content: center;
    }
    .empower-sub {
        margin-left: auto;
        margin-right: auto;
    }
    .empower-title {
        font-size: 34px;
    }
    .play-wrap {
        width: 140px;
        height: 140px;
        margin-bottom: 14px;
    }
    .circular-text {
        width: 140px;
        height: 140px;
    }
    .play-btn {
        width: 70px;
        height: 70px;
    }
    .play-icon {
        border-left-width: 14px;
        border-top-width: 9px;
        border-bottom-width: 9px;
    }

    .wwd-grid {
        grid-template-columns: 1fr;
    }
    .team-grid {
        grid-template-columns: 1fr;
    }
    .welcome-split {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    .vm-grid {
        grid-template-columns: 1fr;
    }
    .highlights {
        grid-template-columns: 1fr;
    }
    .highlights-stats-bar {
        align-items: stretch;
        gap: 12px;
        padding: 18px 12px;
    }
    .highlights-stat-item {
        border-left: none;
        justify-content: flex-start;
        padding: 0;
    }
    .highlights-stat-icon{
        width: 42px;
        height: 42px;        
        font-size: 18px;
    }
    .highlights-stat-number {
        font-size: 18px;
        line-height: 26px;
    }
    .global-local-split {
        grid-template-columns: 1fr;
        gap: 32px;
    }
    .global-local-map {
        min-height: 260px;
    }
    .global-local-info-bar {
        flex-wrap: wrap;
        gap: 20px;
    }
    .global-local-info-item {
        padding: 0 0;
        width: calc(50% - 20px);
        flex: auto;
        border: 0;
    }
    .future-cta-split {
        grid-template-columns: 1fr;
    }
    .future-cta-features{
        padding-top: 25px;
        margin-top: 25px;
    }
    .future-cta-features {
        border-left: none;
        border-top: 1px solid rgba(0, 65, 107, 0.12);
    }
    .welcome-panel {
        grid-template-columns: 1fr;
    }
    .intro-wrap {
        padding: 0 10px;
    }
    .manifesto-split {
        grid-template-columns: 1fr;
    }
    .hk-timeline-list {
        grid-template-columns: repeat(3, 1fr);
        row-gap: 28px;
    }
    .stat-mosaic {
        grid-template-columns: 1fr;
    }
    .capabilities {
        grid-template-columns: 1fr;
    }
    .values-grid {
        grid-template-columns: 1fr 1fr;
    }
    .faq-grid {
        grid-template-columns: 1fr;
    }
    .contact-grid {
        grid-template-columns: 1fr;
    }
    .contact-form-wrap {
        grid-template-columns: 1fr;
    }
    .sfl-hero {
        padding: 50px 0 40px;
        background: no-repeat;
    }

    .sfl-hero-heading {
        font-size: 40px;
    }

    .sfl-section-title {
        font-size: 28px;
    }

    .common-inner-cta-card {
        padding: 36px 28px;
    }

    .sfl-cta-title {
        font-size: 22px;
    }

    .ep-banner {
        padding: 40px 0 36px;
    }

    .ep-section {
        padding: 52px 0;
    }

    .ep-cefr-table {
        font-size: 13px;
    }

    .ep-level-footer {
        width: calc(100% + 40px);
        margin-left: -20px;
    }

    .cc-banner {
        padding: 40px 0 36px;
    }

    .cc-benefit-list {
        grid-template-columns: repeat(2, 1fr);
    }

    .cc-section {
        padding: 52px 0;
    }

    .cc-highlight-img-area {
        height: 180px;
    }

    .common-inner-cta-card {
        flex-wrap: wrap;
    }

    .common-cta-center-sec {
        width: 100%;
    }

    .common-inner-cta-illus {
        max-width: 180px;
    }

    .common-cta-end-sec {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }

    .flp-banner {
        padding: 40px 0 36px;
    }

    .flp-banner-title {
        font-size: 34px;
    }

    .flp-illus-globe-wrap {
        display: none;
    }

    .flp-section-title {
        font-size: 24px;
    }

    .flp-vaksudha-card {
        padding: 32px 24px;
    }

    .flp-dual-card {
        margin-bottom: 0;
    }

    /* Programme cards: 2 cols on tablet */
    .flp-programmes .row .col-lg-4 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    /* Why learn: 3 cols on tablet */
    .flp-why-learn .row-cols-lg-6 {
        --bs-columns: 3;
    }

    /* FLP 991px — banner stacks, illus hides */
    .flp-banner::before{
        width: 100%;
    }

    .flp-banner {
        padding: 48px 0 40px;
    }

    .flp-banner .row {
        flex-direction: column;
    }

    .flp-banner .col-lg-7,
    .flp-banner .col-lg-6 {
        width: 100%;
        max-width: 100%;
        flex: 0 0 100%;
    }

    .flp-illus-globe-wrap {
        display: none;
    }

    .flp-illus-books {
        max-width: 100%;
        margin-top: 28px;
    }

    /* Why grid: 4-col on tablet */
    .flp-why-card{
        padding: 20px 10px;
    }

    .flp-why-title {
        font-size: 17px;
    }

    .flp-why-grid .col:nth-child(n) {
        flex: 0 0 33%;
        max-width: 33%;
    }

    /* Learn grid: 3-col on tablet */
    .flp-why-learn .row .col {
        flex: 0 0 33.333%;
        max-width: 33.333%;
    }

    /* Lang cards: 2-col on tablet */
    .flp-lang-card {
        width: calc(50% - 10px);
    }

    /* Dual cards: full width stacked */
    .flp-dual-section .row > [class*="col-"] {
        width: 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    /* Programme desc & list smaller on tablet */
    .flp-prog-title {
        font-size: 17px;
    }

    .flp-prog-desc,
    .flp-prog-list li {
        font-size: 14px;
    }

    /* Info strip stacks on tablet */
    .flp-info-strip-text {
        flex-direction: column;
        gap: 8px;
    }

    /* More card: stack button */
    .flp-more-card .row {
        flex-direction: column;
        gap: 12px;
    }

    .flp-more-card .col-lg-4 {
        text-align: left !important;
    }

       .fsl-banner-title {
        font-size: 38px;
    }

    .fsl-banner-title span {
        font-size: 26px;
    }

    .fsl-reasons-card {
        max-width: 100%;
    }

    .fsl-section {
        padding: 48px 0;
    }

    .fsl-cefr-badge {
        padding: 8px 4px;
    }

    .fsl-cefr-code {
        font-size: 16px;
    }

    .fsl-stats-inner {
        gap: 0;
    }

    .fsl-stat-item {
        min-width: 100px;
        padding: 10px 12px;
    }

    .student-image{
        display: none;
    }

    .cta-section-wrap {
        max-width: 100%;
    }

    .footer-sec-border-top .footer-column {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        margin-bottom: 20px;
    }

    .contact-form-details {
        gap: 30px;
        grid-template-columns: 1fr;
    }

    .footer-bottom-section {
        flex-direction: column;
        gap: 10px;
    }

    .footer-made-with-text,
    .footer-right-page-link{
        justify-content: center;
    }

    .cf-card {
        padding: 30px 25px;
    }

    .cf-card-title {
        font-size: 26px;
        line-height: 32px;
    }

    .tab-hero-inner {
        gap: 30px;
        flex-direction: column;
    }

    .tab-hero-content {
        flex: 100%;
        max-width: 100%;
        width: 100%;
    }

    .tab-hero-media {
        position: relative;
        flex: 1;
        align-self: stretch;
        display: flex;
        align-items: center;
        max-width: 100%;
        height: 300px;
    }

    .tab-hero-title-line{
        font-size: 36px;
        line-height: 44px;
    }

    .tab-hero-desc {
        max-width: 100%;
    }

    .sfl-tab-programs-grid{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .sfl-tab-program-card {
        width: calc(50% - 5px);
    }

    .sfl-tab-features-bar{
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px;
    }

    .sfl-tab-feature-item{
        flex: auto;
        padding: 0 0px;
        width: calc(50% - 20px);
    }
    
    .sfl-tab-feature-divider{
        display: none;
    }

    .sfl-tab-feature-brand {
        flex-direction: row;
        padding-left: 0;
    }

    .tab-cta-inner {
        gap: 16px;
        flex-direction: column;
        align-items: flex-start;
    }

    .tab-cta-divider{
        display: none;
    }

    .tab-cta-lead {
        gap: 14px;
        flex: 100%;
        max-width: 100%;
    }

    .tab-cta-btn {
        min-width: 190px;
        min-height: 44px;
        font-size: 14px;
        line-height: 22px;
        font-weight: 600;
        padding: 0 20px;
    }

    .counter-content {
        grid-template-columns: repeat(2, 1fr);
        row-gap: 20px;
    }

    .counter-content-grid{
        max-width: 100%;
        border: 0;
    }

    .testi-stats-bar {
        flex-wrap: wrap;
        margin-bottom: 30px;
        row-gap: 25px;
    }

    .testi-stat-item{
        padding: 0 20px;
        width: 50%;
    }

    .testi-stat-icon {
        width: 50px;
        height: 50px;
        font-size: 24px;
    }

    .testi-stat-item:nth-child(3){
        border-left: 0;
    }

    .tth-tab-main-row{
        flex-direction: column;
        align-items: center;
    }

    .tth-tab-mosaic {
        flex: 100%;
    }

    .fs-tab-highlights-bar{
        padding: 15px;
    }

    .ent-tab-top-row{
        flex-direction: column;
    }

    .ent-tab-desc-col {
        flex: 100%;
        max-width: 100%;
    }

    .ent-tab-who-tags{
        gap: 10px 18px;
    }

    .ttt-prog-card-wrapper{
        grid-template-columns: repeat(1, 1fr);
    }

    .ttt-counter-bar{
        padding: 15px;
    }

    .ttt-counter-item {
        align-items: center;
        flex-direction: column;
        gap: 10px;
        justify-content: center;
        text-align: center;
    }

    .ll-tab-cards-row{
        grid-template-columns: 1fr;
    }

    .interp-lang-strip{
        padding: 15px;
        flex-direction: column;
        align-items: flex-start;
    }

    .interp-trust-item{
        flex-direction: column;
        justify-content: center;
        text-align: center;
    }

    .sfl-hero:before{
        display: none;
    }

    .hero-title {
        font-size: 48px;
        line-height: 62px;
    }

    .common-inner-cta-section{
        padding: 45px 0;
    }

    .inner-banner-xl .inner-banner-wrapper {
        min-height: 300px;
        padding: 30px 15px;
    }

    .inner-banner-xl .inner-banner-title {
        font-size: 52px;
        line-height: 60px;
    }

    .welcome-content .cmn-section-title {
        font-size: 36px;
        line-height: 44px;
    }

    .wwd-steps{
        grid-template-columns: repeat(1, 1fr);
    }

    .about-video-wrapper {
        width: 100%;
        height: 350px;
    }

    .video-popup-wrapper .modal-content .btn-close {
        right: 20px;
        top: -50px;
        width: 30px;
        height: 30px;
    }

    .ep-banner:before{
        width: 100%;
        background: linear-gradient(90deg, rgba(255 255 255 / 90%) 100%, rgba(255, 255, 255, 0) 100%);
    }

    .ep-cefr-table tbody td {
        padding: 12px 16px;
    }

    .ep-cefr-badge {
        font-size: 20px;
    }

    .ep-cefr-table thead tr th{
        padding: 12px 16px;
    }

    .page-template-care-connect-programme .common-inner-cta-illus{
        max-width: 110px;
    }

    .page-template-care-connect-programme .common-inner-cta-card{
        flex-wrap: wrap;
    }

    .page-template-care-connect-programme .common-cta-center-sec{
        width: 100%;
    }

    .cc-banner::before{
        width: 100%;
    }

    .inner-cta-title{
        font-size: 20px;
    }

    .fs-hero-bg{
        background-image: none !important;
        padding: 0;
    }

    .fs-hero:before, .fs-hero:after{
        display: none;
    }

    .header-section-alt-center{
        margin: 0;
        padding: 40px 0;
        position: relative;
        z-index: 1;
    }

    .fs-hero-row-top {
        row-gap: 30px;
    }

    .sf-hero-section .inner-mobile-banner-image{
        padding-top: 20px;
    }

    .inner-mobile-banner-image{
        align-items: center;
        justify-content: center;
    }

    .fs-fourcee-list{
        grid-template-columns: repeat(2, 1fr);
    }

    .fs-campus-icon {
        font-size: 36px;
    }

    .fs-campus-label strong {
        font-size: 16px;
        line-height: 24px;
    }

    .fs-campus-label{
        gap: 8px;
    }

    .fs-bridge-text {
        font-size: 16px;
        line-height: 26px;
    }

    .fs-why-programme{
        margin-bottom: 0;
    }

    .fs-programme-hero-icon{
        width: 48px;
        height: 48px;
        font-size: 24px;
    }

    .fs-programme-hero-label {
        font-size: 18px;
        line-height: 26px;
    }

    .fs-programme-hero-content strong {
        font-size: 22px;
        line-height: 30px;
    }

    .newsletter-cta-content-wrapper .cmn-section-title{
        text-align: center;
    }

    .fs-why-image-wrap{
        margin-top: 40px;
    }

    .edp-hero-bg {
        padding-bottom: 40px;
    }

    .edp-hero-image-col {
        order: 2;
    }

    .edp-hero-cards {
        order: 3;
    }

    .edp-hero-image {
        max-width: 340px;
        margin: 0 auto;
    }

    .edp-pathway-section {
        padding-top: 60px;
    }

    .edp-impact-stat {
        border-right: 0;
    }

    .edp-impact-stat:last-child {
        border-bottom: 0;
    }

    .edp-incubation-cta {
        flex-wrap: wrap;
        text-align: left;
    }

    .edp-contact-bar {
        flex-direction: column;
        align-items: flex-start;
    }

    .edp-contact-items {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }

    .edp-hero-bg .container{
        max-width: 100%;
    }

    .edp-pathway-row{
        row-gap: 60px;
    }

    .edp-impact-stats{
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 30px;
        background-position: bottom -60px center;
    }

    .edp-impact-stat{
        padding: 0 10px;
    }

    .fs-impact-label{
        margin-bottom: 0;
    }

    .edp-impact-highlight{
        max-width: 100%;
    }

    .edp-bottom-strip-section{
        margin-bottom: 0px;
    }

    .contact-form-spacing{
        margin-bottom: 0;
    }

    .edp-path-outcome{
        padding: 15px 90px 15px 15px;
    }

    .is-offer-section {
        padding-top: 60px;
    }

    .is-benefits-card {
        margin-top: 10px;
    }

    .is-hero-bg .container{
        max-width: 100%;
    }

    .is-impact-stat{
        border-bottom: 0;
    }

    .is-apply-section{
        margin-bottom: 0;
    }

    .ttp-info-section,
    .ttp-approach-section {
        padding-top: 60px;
    }

    .ttp-approach-section {
        padding-bottom: 60px;
    }

    .ttp-model-track {
        flex-wrap: wrap;
        justify-content: center;
        gap: 12px;
    }

    .ttp-model-arrow {
        display: none;
    }

    .ttp-model-step {
        flex: 0 0 calc(33.333% - 12px);
        max-width: calc(33.333% - 12px);
    }

    .ttp-takeaway-wrap {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .ttp-check-list li {
        text-align: left;
    }

    .ttp-stats-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ttp-check-list li i {
        font-size: 14px;
        margin-top: 0px;
    }

    .ttp-bottom-row {
        row-gap: 30px;
    }

    .ttp-career-item {
        width: calc(32% - 7px);
    }

    .ttp-bottom-section {
        margin-bottom: 0;
    }

    .ttp-quote-text{
        max-width: calc(100% - 100px);
    }

    .ttp-about-text.cmn-section-sub {
        font-size: 18px;
        line-height: 30px;
    }

    .welcome-content .header-section-alt-center{
        padding: 0 0 0 0;
        margin: 0 0 15px 0;
    }

    .flp-dual-content-col .col-12 + .col-12 {
        margin-top: 8px;
    }

    .flp-dual-list li i {
        display: flex;
        margin-top: 2px;
    }

    /* Types: 2 per row */
    .ips-types-section .col-lg-2 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    /* Languages: stack */
    .ips-lang-cover-inner   { flex-direction: column; gap: 18px; }
    .ips-lang-cover-left    { min-width: auto; width: 100%; }
    .ips-lang-cover-body    {
        border-left: none;
        border-top: 2px solid rgba(0,65,107,0.12);
        padding-left: 0;
        padding-top: 18px;
    }

    /* Industries: 3 per row */
    .ips-industries-section .col-lg-2 {
        flex: 0 0 33.333%;
        max-width: 33.333%;
    }

    /* Gallery */
    .ips-gallery-grid { grid-template-columns: repeat(3, 1fr); height: 170px; }

    /* Counter bar */
    .ips-counter-number { font-size: 30px; }
    .ips-counters-section { padding: 40px 0; }
    .ips-map-placeholder { height: 260px; }

    .ips-counter-stat-icon {
        width: 48px;
        height: 48px;
        font-size: 20px;
    }

    .ips-fourcee-grid{
        display: flex;
        align-items: center;
        gap: 20px;
    }

    .ips-fourcee-content h3 br{
        display: none;
    }

    .ips-fourcee-content h3{
        margin-bottom: 0;
    }

    .ips-type-icon {
        width: 44px;
        height: 44px;
        font-size: 20px;
    }

    .ips-why-map-section .header-section-alt-center{
        padding: 0;
        margin-bottom: 0;
    }

    .ips-why-list{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .ips-why-list li{
        gap: 8px;
    }

    .ips-why-list li i{
        font-size: 14px;
        display: flex;
    }

    .ips-counters-grid{
        grid-template-columns: repeat(2, 1fr);
        row-gap: 25px;
    }

    .ips-counters-section{
        margin-bottom: 0;
    }

    .ips-why-map-section .header-section-alt-center{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .ips-why-map-section .header-section-alt-center .cmn-section-title::after{
        left: 50%;
        transform: translateX(-50%);
    }

    .trl-languages-section .col-lg-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .trl-lang-card { height: auto; }
    .trl-rare-bg-globe { font-size: 150px; }

    /* Rare grid wraps */
    .trl-rare-grid {
        justify-content: center;
        row-gap: 20px;
    }
    .trl-rare-item:nth-child(3),
    .trl-rare-item:nth-child(6) {
        border-right: none;
    }
    .trl-section { padding: 40px 0; }
    .trl-type-item{width: calc(50% - 8px);}

    .trl-feature-grid{
        grid-template-columns: repeat(3, 1fr);
    }

    .trl-quote-box.ttp-quote-box{
        padding: 26px 32px;
    }
    
    .trl-counter-bar-section {
        margin-bottom: 0;
    }

    .trl-cbar-number {
        font-size: 22px;
    }

    .ttp-incubation-cta .edp-incubation-illus {
        width: 50px;
        height: 50px;
        font-size: 24px;
    }

    /* lls-what — 991px */
    .lls-what-row        { flex-direction: column; }
    .lls-what-left       { gap: 15px; max-width: 100%; }
    .lls-what-icon-box   { width: 80px; height: 80px;}
    .lls-what-title      { font-size: 20px; }
    /* Tags: 3 columns on 991 */
    .lls-what-tags { flex-wrap: wrap; row-gap: 15px;}
    .lls-what-tag {padding: 14px 6px; width: calc(33% - 10px); flex: auto;}
    .lls-what-tag:nth-child(3), .lls-what-tag:nth-child(6) { border-right: none; }
    .lls-what-tag-label  { font-size: 14px; }

    .lls-physical-top{
        flex-direction: column;
    }

    .lls-physical-img-wrap{
        flex: 0 0 100%;
        max-width: 100%;
        min-height: auto;
    }

    .lls-physical-equipment{
        grid-template-columns: repeat(3, 1fr);
    }

    .lls-equip-item:nth-child(-n + 3){
        border-bottom: 1px solid rgba(0, 65, 107, 0.08);
    }

    .lls-counter-section{
        margin-bottom: 0;
    }

    .lls-counter-grid{
        grid-template-columns: repeat(2, 1fr);
    }

    .lls-counter-item:nth-child(-n + 3){
        border-bottom: 1px solid rgba(0, 65, 107, 0.1);
    }

    /* career — 991px */
    .career-intro-title {
        font-size: 32px;
    }

    .career-intro-text {
        font-size: 15px;
    }

    .career-hiring-title {
        font-size: 24px;
        margin-bottom: 30px;
    }

    .career-job-card {
        padding: 22px 24px;
    }

    .career-job-meta {
        gap: 6px 16px;
    }

    .career-job-meta-item {
        font-size: 13px;
    }

    .career-contact-card {
        padding: 22px 20px;
    }

    .career-contact-link {
        font-size: 16px;
    }

    .career-contact-phone {
        font-size: 15px;
    }

    .career-life-text{
        padding: 16px 10px;
    }

    .career-life-different-title {
        font-size: 26px;
    }

    .career-life-join-title {
        font-size: 22px;
    }

    .career-life-join-cta {
        font-size: 16px;
    }

    .career-job-name {
        font-size: 20px;
        margin-bottom: 10px;
    }

    .career-job-details h3 {
        font-size: 18px;
        line-height: 26px;
    }

    .career-job-details p {
        font-size: 14px;
    }

    .career-life-cell-desc {
        font-size: 14px;
        line-height: 1.5;
    }

    .career-life-philosophy-list li {
        font-size: 13px;
        line-height: 1.5;
        padding-left: 15px;
    }

    .career-modal-popup .modal-dialog {
        width: 100%;
        max-width: 90%;
    }

    /* blog detail — 991px */
    .bd-body{
        line-height: 1.6;
    }

    .bd-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .blog-grid {
        justify-content: center;
    }

    .bd-sidebar {
        position: static;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .bd-back-btn {
        grid-column: span 2;
    }

    .bd-title {
        font-size: 28px;
    }

    .bd-body h2 { font-size: 22px; }
    .bd-body h3 { font-size: 19px; }

    .bd-author-box{
        padding: 20px 18px;
    }

    .bd-author-avatar {
        width: 62px;
        height: 62px;
    }

    .ttp-quote-mark{
        font-size: 36px;
    }

    .ttp-quote-open {
        left: 5px;
    }

    .ttp-quote-close {
        right: 5px;
    }

    .contact-office-card {
        width: calc(50% - 10px);
    }

    .fsl-banner-bg:before{
        width: 100%;
        background: linear-gradient(90deg, rgb(255 255 255 / 100%) 50%, rgba(255, 255, 255, 0) 100%);
    }

    .fsl-career-grid{
        grid-template-columns: repeat(3, 1fr);
    }

    .fsl-stats-counters{
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        padding: 15px 0;
    }

    .fsl-stats-bar{
        margin: 40px 0;
    }

    .fsl-lang-strip-flags {
        grid-template-columns: repeat(3, 1fr);
    }

    .fsl-banner-bg{
        padding: 50px 0;
    }

    .fsl-journey-cta{
        margin-top: 30px;
    }

    .fsl-experts-exams-row,
    .fsl-banner-row{
        row-gap: 30px;
    }
}

@media (max-width: 767px){

    .header-logo {
        max-width: 85px;
    }

    .mobile-toggle-menu{
        width: 26px;
        height: 20px;
    }

    .hero-title {
        font-size: 46px;
        line-height: 58px;
    }

    .our-partners-wrapper {
        margin-top: 30px;
        row-gap: 6px;
    }

    .our-partners-title {
        font-size: 20px;
        line-height: 36px;
    }

    .hk-logo-marquee {
        height: 40px;
        padding: 0px 10px;
    }

    .common-padding {
        padding: 40px 0;
    }

    .newsletter-cta-section {
        padding-bottom: 45px;
    }

    .header-section-center {
        margin-bottom: 25px;
    }

    .cmn-section-title {
        font-size: 32px;
        line-height: 44px;
        letter-spacing: -1.75px;
    }

    .cmn-section-sub {
        font-size: 20px;
        letter-spacing: -0.75px;
    }

    .common-sub-section-title, .section-content, .tabbing-listing-title, .check-list {
        font-size: 20px;
        line-height: 26px;
    }

    .section-content {
        margin-bottom: 30px;
    }

    .tabbing-listing-title {
        margin-bottom: 20px;
    }

    .check-list {
        row-gap: 12px;
        margin-bottom: 30px;
    }

    .abt-msn-vsn-content {
        font-size: 18px;
        line-height: 28px;
    }

    .counter-content {
        padding: 20px;
    }
    
    .counter-content-grid {
        max-width: 140px;
    }

    .counter-seprator {
        margin: 12px 0 10px;
    }

    .counter-numbers {
        font-size: 32px;
        line-height: 44px;
    }

    .counter-title{
        min-height: 44px;
    }

    .slick-prev, .testi-slick .slick-prev {
        margin-left: -80px;
    }

    .slick-next, .testi-slick .slick-next {
        margin-right: -80px;
    }

    .cmn-section-sub br{
        display: none;
    }
    
    .contact-content{
        flex-direction: column;
        row-gap: 40px;
    }
    
    .student-image{
        display: none;
    }

    .contact-form-spacing{
        margin-bottom: 0;
    }

    .newsletter-cta-content-wrapper{
        width: 100%;
        max-width: 100%;
        justify-content: center;
        align-items: center;
        text-align: center;
    }

    .sfl-hero {
        padding: 40px 0 32px;
        text-align: center;
    }

    .sfl-hero-heading {
        font-size: 34px;
    }

    .sfl-heading-underline {
        margin: 10px auto 0;
    }

    .sfl-hero-actions {
        justify-content: center;
    }

    .sfl-lang-pills {
        justify-content: center;
    }

    .sfl-hero-illustration {
        max-width: 380px;
        margin: 0 auto;
    }

    .sfl-illus-desk {
        min-height: auto;
        padding: 24px 18px 20px;
    }

    .sfl-illus-stat {
        position: static;
        margin: 0 4px;
    }

    .sfl-illus-headphones {
        top: 10px;
        right: 10px;
    }

    .sfl-section-title {
        font-size: 24px;
    }

    .sfl-prog-card {
        margin-bottom: 8px;
    }

    .common-inner-cta-card {
        padding: 28px 18px;
        text-align: center;
    }

    .sfl-cta-features {
        justify-content: center;
    }

    .sfl-cta-btn {
        width: 100%;
        justify-content: center;
    }

    .sfl-why-grid .col-md-6 {
        width: 100%;
    }

    .sfl-prog-float-icon {
        left: 50%;
        transform: translateX(-50%);
    }

    .ep-banner {
        padding: 32px 0 28px;
        text-align: center;
    }

    .ep-feature-list {
        justify-content: center;
    }

    .ep-banner-img-wrap {
        max-width: 340px;
        margin: 0 auto;
    }

    .ep-section {
        padding: 44px 0;
    }

    .ep-info-bar {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .ep-level-footer {
        width: calc(100% + 36px);
        margin-left: -18px;
    }

    .ep-info-text{
        font-size: 16px;
    }

    .english-programme-cta .common-inner-cta-card:before{
        background-color: rgb(0 65 107 / 75%);
    }

    .cc-banner {
        padding: 32px 0 28px;
        text-align: center;
    }

    .cc-benefit-list {
        grid-template-columns: repeat(2, 1fr);
    }

    .cc-benefit-item {
        text-align: left;
    }

    .cc-section {
        padding: 44px 0;
    }

    .cc-highlight-img-area {
        height: 200px;
    }

    .cc-highlight-body {
        padding: 22px 18px 18px;
    }

    .common-inner-cta-card {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }

    .common-inner-cta-illus {
        max-width: 160px;
        margin: 0 auto;
    }

    .common-cta-center-sec {
        align-items: center;
    }

    .common-cta-end-sec {
        align-items: center;
        justify-content: center;
    }

    .cta-info-line {
        justify-content: center;
        text-align: left;
    }

    .flp-banner {
        padding: 32px 0 28px;
        text-align: center;
    }

    .flp-banner-title {
        font-size: 30px;
    }

    .flp-title-underline {
        margin: 10px auto 16px;
    }

    .flp-banner-illus {
        max-width: 320px;
        margin: 0 auto;
    }

    .flp-section-title {
        font-size: 22px;
    }

    /* Programme cards: 1 col on mobile */
    .flp-programmes .row .col-lg-4,
    .flp-programmes .row .col-md-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    /* Why learn: 2 cols on mobile */
    .flp-why-learn .row {
        --bs-gutter-x: 0.75rem;
    }

    .flp-lang-card {
        flex-direction: column;
        align-items: flex-start;
    }

    .flp-dual-card-inner {
        flex-direction: column;
    }

    .flp-dual-list .row .col-6 {
        width: 100%;
    }

    .flp-more-card {
        text-align: center;
    }

    .flp-more-btn {
        margin-top: 12px;
    }

    .flp-vaksudha-card {
        padding: 24px 16px;
        text-align: center;
    }

    .flp-vaksudha-cta-text {
        justify-content: center;
    }

    .flp-vaksudha-features {
        align-items: flex-start;
    }

    /* FLP 767px — full mobile treatment */
    .flp-banner {
        padding: 36px 0 28px;
        text-align: center;
    }

    .flp-banner .col-lg-7,
    .flp-banner .col-lg-6 {
        width: 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

    .flp-banner-title {
        font-size: 28px;
        line-height: 1.25;
    }

    .flp-title-underline {
        margin: 10px auto 14px;
    }

    .flp-banner-tagline {
        font-size: 15px;
    }

    .flp-banner-para {
        font-size: 14px;
    }

    .flp-illus-books {
        max-width: 340px;
        margin: 24px auto 0;
    }

    /* Why grid: 2-col on mobile */
    .flp-why-grid .col:nth-child(n) {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .flp-why-title {
        font-size: 15px;
    }

    /* Prog cards: 1-col on mobile */
    .flp-programmes .row .col-lg-4,
    .flp-programmes .row .col-md-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .flp-prog-title {
        font-size: 16px;
    }

    .flp-prog-desc,
    .flp-prog-list li {
        font-size: 14px;
    }

    /* Learn grid: 2-col on mobile */
    .flp-why-learn .row .col {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .flp-learn-title {
        font-size: 13px;
    }

    /* Lang cards: 1-col on mobile */
    .flp-lang-card {
        width: 100%;
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .flp-lang-card-row {
        flex-direction: column;
    }

    .flp-lang-name {
        font-size: 16px;
    }

    /* More card */
    .flp-more-card {
        text-align: center;
    }

    .flp-more-card .row {
        flex-direction: column;
        text-align: center;
    }

    .flp-more-btn {
        margin-top: 10px;
    }

    /* Dual cards */
    .flp-dual-card-inner {
        flex-direction: column;
    }

    .flp-dual-title {
        font-size: 17px;
    }

    .flp-dual-list .row .col-6 {
        width: 100%;
    }

    .flp-dual-info-line {
        flex-direction: column;
        text-align: center;
        font-size: 14px;
    }

    /* CTA */
    .common-inner-cta-card {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }

    .common-inner-cta-illus {
        max-width: 160px;
        margin: 0 auto;
    }

    .common-cta-center-sec {
        align-items: center;
    }

    .common-cta-end-sec {
        align-items: center;
        justify-content: center;
        width: 100%;
        max-width: 100%;
        margin-left: 0;
    }

    /* Info strip */
    .flp-info-strip-text {
        flex-direction: column;
        gap: 6px;
        font-size: 12px;
    }

    .flp-lang-flag {
        width: 36px;
        height: 36px;
    }

    .flp-dual-icon {
        width: 44px;
        height: 44px;
        font-size: 22px;
    }

    .inner-cta-listing{
        width: 100%;
        column-gap: 30px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }

    .fsl-banner-title {
        font-size: 30px;
    }

    .fsl-banner-title span {
        font-size: 22px;
    }

    .fsl-section {
        padding: 40px 0;
    }

    .fsl-feature-tags {
        justify-content: center ;
    }

    .fsl-banner-actions {
        flex-direction: column;
        align-items: center;
    }

    .fsl-lang-strip-flags {
        gap: 6px;
    }

    .fsl-lang-flag-item {
        min-width: 50px;
        padding: 6px 8px;
    }

    .fsl-stats-inner {
        flex-wrap: wrap;
    }

    .fsl-stat-item {
        flex: 1 1 45%;
        border-right: none;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    }

    .fsl-stat-action {
        flex: 1 1 100%;
        justify-content: center;
    }

    .fsl-stat-action a {
        width: 100%;
        justify-content: center;
    }

    .fsl-journey-cta {
        padding: 24px 20px;
    }

    .fsl-journey-title {
        font-size: 18px;
    }

    .tab-hero-title-line {
        font-size: 32px;
        line-height: 40px;
    }

    .tab-hero-title::after{
        width: 38px;
    }

    .study-grid-wrapper {
        gap: 18px;
    }

    .featstats-item {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .featstats-mission-icon {
        width: 56px;
        height: 56px;
        font-size: 28px;
    }

    .featstats-cta{
        width: 100%;
    }

    .contact-office-card {
        padding: 18px;
    }

    .contact-office-icon {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }

    .contact-office-title {
        font-size: 16px;
        line-height: 24px;
    }

    .newsletter-cta-content-wrapper .cmn-section-title {
        font-size: 28px;
        line-height: 38px;
    }

    .cta-section-wrap{
        padding: 20px;
    }

    .newsletter-cta-btn {
        padding: 8px 18px;
        font-size: 14px;
        line-height: 22px;
    }

    .newsletter-cta-features {
        flex-wrap: wrap;
        gap: 20px;
    }
    
    .newsletter-cta-feature{
        border: 0;
    }

    .footer-slanted {
        padding: 55px 0 20px;
    }

    .footer-row-wrap .footer-col:not(:last-child){
        border: 0;
        padding-bottom: 40px;
    }

    .footer-col:nth-last-child(-n + 2){
        padding-top: 0;
    }

    .footer-counter-content{
        flex-wrap: wrap;
        display: flex;
        justify-content: center;
        gap: 20px;
    }

    .footer-counter-content-grid{
        width: calc(33% - 20px);
    }

    .fs-tab-skills-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fs-tab-highlight-divider{
        display: none;
    }

    .fs-tab-highlights-bar {
        padding: 15px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        row-gap: 25px;
    }

    .tth-tab-skills-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ent-tab-philosophy-header {
        gap: 6px;
    }

    .fs-tab-section-title {
        margin: 0;
        font-size: 22px;
    }

    .ent-tab-philosophy{
        padding: 18px;
    }

    .ent-tab-philosophy-grid{
        grid-template-columns: repeat(2, 1fr);
    }

    .ttt-prog-card{
        flex-wrap: wrap;
    }

    .ttt-sub-heading {
        margin: 0 0 0px;
    }

    .ttt-prog-body{
        width: 100%;
        flex: auto;
    }

    .ttt-counter-divider{
        display: none;
    }

    .ttt-counter-bar {
        padding: 15px;
        flex-wrap: wrap;
        row-gap: 25px;
    }

    .ttt-counter-item {
        flex: auto;
        width: 50%;
    }

    .interp-tab-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .interp-trust-bar{
        padding: 16px;
        flex-wrap: wrap;
        row-gap: 20px;
    }

    .interp-trust-divider{
        display: none;
    }

    .interp-trust-item{
        padding: 0;
        width: 50%;
        flex: auto;
    }

    .trans-tab-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .trans-other-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .hero-inner-content .hero-title:before{
        left: 50%;
        transform: translateX(-50%);
    }

    .hero-inner-content .hero-banner-sub-title {
        font-size: 18px;
        line-height: 26px;
        margin: 0 0 15px 0;
    }

    .inner-banner-xl .inner-banner-wrapper {
        min-height: 250px;
        padding: 15px;
    }

    .welcome-content .cmn-section-title {
        font-size: 32px;
        line-height: 40px;
    }

    .welcome-kpis{
        grid-template-columns: repeat(2, 1fr);
    }

    .highlights-stats-bar{
        flex-wrap: wrap;
        row-gap: 25px;
    }

    .highlights-stat-item{
        width: calc(33% - 20px);
        flex: auto;
    }

    .wwd-left {
        flex: 0 0 460px;
        max-width: 460px;
    }

    .wwd-venn {
        width: 460px;
        height: 460px;
        padding: 0;
    }

    .wwd-venn-ring {
        inset: -24px;
    }

    .wwd-quad-icon{
        width: 36px;
        height: 36px;
        font-size: 18px;
        margin-bottom: 10px;
    }

    .wwd-quad-title {
        font-size: 13px;
    }

    .wwd-quad-text {
        font-size: 11px;
    }

    .ep-feature-list{
        grid-template-columns: repeat(2, 1fr);
        row-gap: 20px;
    }

    .ep-feature-item:nth-child(2){
        border: 0;
    }

    .ips-feature-list .ep-feature-item:nth-child(2){
        border-right: 1px solid #00416b2b;
    }

    .ep-level-icon {
        width: 52px;
        height: 52px;
        font-size: 24px;
    }

    .ep-feat-icon{
        width: 48px;
        height: 48px;
        font-size: 22px;
    }

    .care-connect-cta-primary::before{
        display: none;
    }

    .page-template-care-connect-programme .common-inner-cta-illus {
        max-width: 160px;
    }

    .fs-banner-main-section .header-section-alt-center{
        text-align: center;
    }

    .fs-training-card{
        padding: 15px;
    }

    .fs-training-icon {
        font-size: 36px;
    }

    .fs-training-number {
        font-size: 32px;
        line-height: 38px;
    }

    .fs-fourcee-card{
        padding: 18px;
    }

    .fs-fourcee-list{
        gap: 25px 15px;
    }

    .fs-fourcee-icon{
        width: 35px;
        height: 35px;
        font-size: 14px;
    }

    .fs-hero-row-bridge{
        flex-wrap: wrap;
        row-gap: 20px;
    }

    .fs-campus-label{
        gap: 12px;
        align-items: center;
    }

    .fs-hero-col-bridge{
        flex: auto;
    }

    .fs-hero-col-bridge:first-child{
        order: 1;
    }

    .fs-hero-col-bridge:last-child{
        order: 2;
    }

    .fs-hero-col-bridge:nth-child(2){
        order: 3;
        width: 100%;
    }

    .fs-programme-hero-blocks{
        flex-direction: column;
        row-gap: 20px;
    }

    .fs-programme-hero-block{
        flex: auto;
        width: 100%;
    }

    .fs-programme-hero-content{
        width: calc(100% - 200px);
    }

    .fs-skill-grid .col {
        width: 50%;
    }

    .fs-state-wrapper{
        justify-content: space-between;
    }

    .fs-state-card {
        max-width: 135px;
        min-width: 135px;
    }

    .fs-state-center-card{
        margin: 0;
        padding: 0;
        border: 0px;
    }

    .fa-impact-row {
        column-gap: 20px;
    }

    .fs-impact-number {
        font-size: 22px;
        line-height: 30px;
    }

    .edp-hero-image {
        max-width: 100%;
        aspect-ratio: 16 / 12;
    }

    .edp-training-title {
        font-size: 18px;
        line-height: 26px;
    }

    .edp-road-graphic {
        min-height: 150px;
    }

    .edp-incubation-cta {
        padding: 20px;
        gap: 16px;
    }

    .edp-incubation-illus {
        width: 72px;
        height: 72px;
    }

    .edp-incubation-title {
        font-size: 18px;
        line-height: 26px;
    }

    .edp-outcome-content {
        font-size: 16px;
        line-height: 24px;
    }

    .edp-impact-stats {
        background-size: 130%;
        background-position: bottom -30px center;
    }

    .is-journey-step {
        flex: 0 0 calc(50% - 12px);
        max-width: calc(50% - 12px);
    }

    .is-impact-stat {
        padding: 24px 0;
    }

    .is-impact-number {
        font-size: 26px;
        line-height: 34px;
    }

    .is-apply-title {
        font-size: 20px;
        line-height: 28px;
    }

    .is-apply-btn {
        width: 100%;
        justify-content: center;
    }

    .is-banner-main-section .header-section-alt-center{
        text-align: center;
    }

    .is-benefits-list{
        grid-template-columns: repeat(1, 1fr);
    }

    .is-benefits-list li i{
        font-size: 16px;
        margin-top: 1px;
    }

    .is-apply-bar{
        text-align: center;
        align-items: center;
    }

    .ttp-model-step {
        flex: 0 0 calc(50% - 10px);
        max-width: calc(50% - 10px);
    }

    .ttp-takeaway-icon {
        width: 72px;
        height: 72px;
        font-size: 30px;
    }

    .ttp-quote-text {
        font-size: 15px;
        line-height: 24px;
    }

    .ttp-icon-list,
    .ttp-check-list{
        grid-template-columns: repeat(1, 1fr);
    }

    .ttp-check-list{
        width: 100%;
    }

    .ttp-career-grid {
        row-gap: 25px;
    }

    .ttp-highlight-item p {
        font-size: 15px;
        line-height: 24px;
    }

    /* Types: 1 per row */
    .ips-type-card  { padding: 20px 16px 18px; }
    .ips-type-title { font-size: 18px; }
    .ips-type-desc  { font-size: 14px; }
    .ips-type-ideal-label {
        font-size: 14px;
    }

    /* Gallery */
    .ips-gallery-grid { grid-template-columns: repeat(2, 1fr); height: auto; }
    .ips-gallery-item { height: 130px; }

    /* Languages */
    .ips-lang-list-text { font-size: 13px; line-height: 1.75; }
    .ips-lang-rare      { font-size: 12px; }
    .ips-lang-cover-title { font-size: 17px; }

    /* Industries: 2 per row */
    .ips-industries-section .col-lg-2,
    .ips-industries-section .col-md-3 {
        flex: 0 0 50%;
        max-width: 50%;
    }
    .ips-industry-icon { width: 46px; height: 46px; font-size: 20px; }
    .ips-industry-name { font-size: 12px; }


    /* Counters grid: 2+2 */
    .ips-counters-grid {
        grid-template-columns: repeat(2, 1fr);
        background: rgba(255,255,255,0.1);
        padding: 30px 15px;
    }
    .ips-counter-stat-number { font-size: 30px; }
    .ips-counter-stat-label  { font-size: 16px; }

    /* Map */
    .ips-map-placeholder { height: 220px; }
    .ips-map-placeholder i { font-size: 44px; }

    .ips-languages-section { padding: 28px 0; }
    .ips-counters-section   { padding: 0; }

    .ips-hero .hero-inner-content .hero-banner-text{
        margin: 0 auto;
        max-width: 100%;
    }

    .ips-fourcee-content h3 {
        font-size: 20px;
        line-height: 28px;
    }

    .trl-lang-card { padding: 20px 18px; }
    .trl-major-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
    .trl-major-header { gap: 10px; margin-bottom: 18px; }
    .trl-major-count .red-text { font-size: 22px; }
    .trl-major-badge { font-size: 10px; padding: 4px 11px; }
    .trl-lang-name { font-size: 13px; }
    .trl-lang-flag { font-size: 18px; }

    .trl-rare-title { font-size: 18px; }
    .trl-rare-sub { font-size: 12px; }
    .trl-rare-native { font-size: 16px; }

    .trl-section { padding: 36px 0; }
    /* lls-what — 767px */
    .lls-what-icon-box   { width: 70px; height: 70px; }
    .lls-what-icon-box > i { font-size: 30px; }
    .lls-what-icon-overlay { font-size: 16px !important; }
    .lls-what-title      { font-size: 18px; }
    /* Tags: 3 columns */
    .lls-what-tag-icon   { width: 38px; height: 38px; font-size: 17px; }

    .lls-what-left{
        flex-direction: column;
    }

    /* lls-physical — 767px */
    .lls-physical-top         { flex-direction: column; }
    .lls-physical-img-wrap    { flex: 0 0 100%; max-width: 100%; min-height: 220px; }
    .lls-physical-content     { padding: 20px 20px; border-left: none; }
    .lls-physical-desc        { font-size: 14px; margin-bottom: 14px; }
    .lls-physical-list li     { font-size: 14px; }
    .lls-physical-img-title span:first-child { font-size: 14px; }
    .lls-physical-equipment   { grid-template-columns: repeat(3, 1fr); }
    .lls-equip-item:nth-child(-n+3) { border-bottom: 1px solid rgba(0,65,107,0.08); }
    .lls-equip-item:nth-child(3)    { border-right: none; }
    .lls-equip-icon           { width: 44px; height: 44px; font-size: 20px; }
    .lls-equip-label          { font-size: 11px; }
    /* lls-benefits — 767px */
    .lls-benefits-grid        { grid-template-columns: repeat(2, 1fr); }
    .lls-benefit-item         { border-bottom: 1px solid rgba(0,65,107,0.08); padding: 22px 10px; }
    
    .lls-benefit-icon         { width: 50px; height: 50px; font-size: 24px; }
    .lls-benefit-label        { font-size: 14px; }
    .lls-benefits-heading     { font-size: 18px; }
    /* lls-counter — 767px */
    .lls-counter-grid         { grid-template-columns: repeat(2, 1fr); }
    .lls-counter-item         { padding: 24px 16px 20px; }
    .lls-counter-item:nth-child(2) { border-right: none; }
    .lls-counter-item:nth-child(-n + 3){border-bottom: 0;}
    .lls-counter-item:nth-child(-n+2) { border-bottom: 1px solid rgba(0,65,107,0.1); }
    .lls-counter-number       { font-size: 32px; }
    .lls-counter-icon         { width: 50px; height: 50px; font-size: 26px; }
    .lls-counter-label        { font-size: 13px; }

    .lls-vaksudha-content-row{
        flex-direction: column;
    }

    .lls-vaksudha-left{
        flex: 0 0 100%;
        max-width: 100%;
        padding: 20px;
        gap: 10px;
    }

    .lls-vaksudha-brand-name {
        font-size: 20px;
    }

    /* career — 767px */
    .career-intro-title {
        font-size: 28px;
    }

    .career-intro-text {
        font-size: 14px;
        line-height: 1.7;
    }

    .career-hiring-title {
        font-size: 22px;
        margin-bottom: 24px;
    }

    .career-job-card {
        padding: 20px 18px;
    }

    .career-job-name {
        font-size: 18px;
        margin-bottom: 10px;
    }

    .career-job-details h3 {
        font-size: 16px;
        line-height: 24px;
    }

    .career-job-meta {
        flex-direction: column;
        gap: 6px;
    }

    .career-job-actions {
        width: 100%;
        gap: 10px;
    }

    .career-contact-card {
        padding: 20px 16px;
        display: block;
    }

    .career-contact-link {
        font-size: 15px;
    }

    .career-contact-sep {
        display: block;
        margin: 8px 0;
    }

    .career-contact-phone {
        font-size: 14px;
    }

    .career-modal-body {
        padding: 24px 16px;
    }

    .career-modal-header {
        padding: 16px 20px;
    }

    .career-modal-title {
        font-size: 18px;
    }

    .career-form-input {
        padding: 10px 14px;
        font-size: 13px;
    }

    .career-life-grid {
        grid-template-columns: 1fr;
    }

    .career-life-philosophy-list {
        display: grid;    
        grid-template-columns: repeat(2, 1fr);
        column-gap: 10px;
        row-gap: 6px;
    }

    .career-life-different-title {
        font-size: 24px;
    }

    .career-life-different {
        margin-top: 40px;
    }

    .career-life-join-title {
        font-size: 20px;
    }

    .career-life-join-desc {
        font-size: 14px;
    }

    .career-life-join-cta {
        font-size: 15px;
    }

    .career-life-desc {
        font-size: 14px;
    }

    .cf-field-small p{
        flex-direction: column;
        align-items: flex-start;
    }

    .cf-field-small .wpcf7-list-item:first-child{
        margin-left: 0;
    }

    .trl-industries-grid{
        row-gap: 20px;
    }

    .page-template-translation .newsletter-cta-content-wrapper .cmn-section-title{
        max-width: 90%;
        text-align: center;
        margin: 0 auto;
    }

    .contact-office-address {
        min-height: 90px;
    }

    .fsl-career-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .fsl-career-card{
        padding: 15px;
    }

    .fsl-career-icon {
        width: 40px;
        height: 40px;
        font-size: 24px;
    }

    .fsl-career-title {
        font-size: 16px;
    }

    .fsl-why-hk-card{
        padding: 20px;
    }

    .fsl-why-hk-list{
        column-gap: 20px;
    }

    .fsl-why-hk-list li i{
        font-size: 14px;
    }

    .fsl-cta-enrol .newsletter-cta-features{
        gap: 12px
    }

    .fsl-cta-enrol .newsletter-cta-feature {
        min-width: 240px;
    }

    .fsl-cta-enrol .newsletter-cta-feature-title {
        max-width: 100%;
        white-space: nowrap;
    }

    .fsl-banner-row .hero-inner-content{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .fsl-banner-row .hero-title,
    .fsl-banner-row .hero-banner-sub-title{
        text-align: center;
    }

    .fsl-feature-tag{
        font-size: 16px;
        line-height: 24px;
    }
}

@media (max-width: 575px){
    .book-appointment-btn {
        margin-right: 6px;
        height: 36px;
        min-height: 36px;
        padding: 4px 10px !important;
    }

    .book-appointment-btn i {
        font-size: 18px;
    }

    .hk-navbar-sticky .book-appointment-btn{
        min-height: 36px;
    }

    body{
        font-size: 14px;
        line-height: 24px;
    }

    .hk-navbar {
        min-height: 55px;
    }

    .topbar-left-side a{
        width: 16px;
        height: 16px;
    }

    .social-icons {
        width: 16px;
        height: 16px;
    }

    .topbar-left-side a img,
    .social-icons img{
        width: 100%;
        height: 100%;
    }

    .topbar-left-side a span{
        display: none;
    }

    .hero-sub-tag {
        font-size: 12px;
        line-height: 16px;
    }

    .hero-title {
        font-size: 40px;
        line-height: 52px;
    }

    .hero-banner-text {
        font-size: 18px;
        line-height: 28px;
        margin: 20px 0;
    }

    .about-left-image-wrap, .about-right-image-wrap {
        max-width: 100%;
    }

    .about-left-image-wrap{
        gap: 15px;
        justify-content: center;
    }

    .about-top-img:before {
        width: 80px;
        height: 80px;
        left: -16px;
        top: -18px;
    }

    .about-top-radius-img:before {
        width: 50px;
        height: 50px;
        top: 50px;
        left: -16px;
    }

    .about-bottom-img:before {
        width: 70px;
        height: 70px;
        bottom: -20px;
        right: -15px;
    }

    .common-sub-section-title, .section-content, .tabbing-listing-title, .check-list {
        font-size: 18px;
        line-height: 24px;
    }

    .about-mission-vision-wrap{
        grid-template-columns: repeat(1, 1fr);
        row-gap: 25px;
    }

    .abt-msn-vsn-title {
        background-size: 10px;
        padding: 0 0 0 24px;
        margin-bottom: 10px;
    }

    .counter-content{
        grid-template-columns: repeat(2, 1fr);
        row-gap: 15px;
        padding: 15px;
        column-gap: 10px;
    }

    .counter-content-grid{
        max-width: 100%;
        padding: 0;
    }

    .counter-content-grid img {
        width: 60px;
        height: 60px;
        margin-bottom: 0px;
    }

    .counter-numbers {
        font-size: 26px;
        line-height: 40px;
    }

    .counter-title {
        max-width: 120px;
    }

    .study-grid-wrapper{
        grid-template-columns: repeat(1, 1fr);
    }

    .study-grid-image {
        width: 48px;
        height: 48px;
        margin-bottom: 20px;
    }

    .study-grid-image img{
        width: 22px;
    }

    .study-title {
        font-size: 18px;
        line-height: 26px;
        margin-bottom: 8px;
    }

    .footer-slanted:before {
        background-position: left 10% center;
    }

    .tabbing-image-wrapper {
        max-width: 320px;
    }

    .form-row{
        flex-direction: column;
        row-gap: 0;
    }

    .footer-column h3{
        margin-bottom: 10px;
    }

    .grcounter-counters{
        flex-wrap: wrap;
        row-gap: 15px;
    }

    .grcounter-card{
        width: 50%;
        flex: auto;
        border: 0;
    }

    .tab-hero-title-line {
        font-size: 26px;
        line-height: 36px;
    }

    .tab-hero-desc{
        font-size: 14px;
        line-height: 24px;
    }

    .sfl-tab-features-bar {
        gap: 15px;
        padding: 15px;
    }

    .sfl-tab-vaksudha-name {
        font-size: 18px;
    }

    .featstats-bar {
        gap: 35px;
        padding: 25px 15px;
    }

    .featstats-mission-icon {
        width: 42px;
        height: 42px;
        font-size: 22px;
    }

    .featstats-icon {
        font-size: 30px;
    }

    .featstats-value {
        font-size: 24px;
        line-height: 32px;
    }

    .featstats-btn {
        padding: 8px 18px;
        font-size: 14px;
        line-height: 20px;
    }

    .cf-card {
        padding: 20px;
        gap: 12px;
    }

    .cf-field{
        flex: auto;
    }

    .cf-row {
        gap: 0;
        flex-direction: column;
    }

    .contact-offices{
        grid-template-columns: repeat(1, 1fr);
    }

    .contact-office-card{
        width: 100%;
    }

    .contact-office-address{
        min-height: auto;
    }

    .footer-column ul.footer-link-badge-wrapper li a{
        font-size: 13px;
    }

    .hk-navbar.hk-navbar-sticky .header-logo {
        max-width: 70px;
    }

    .hk-navbar.hk-navbar-sticky {
        min-height: 60px;
    }

    .services-tabs-dropdown-wrap, .blog-tabs-dropdown-wrap {
        margin-bottom: 30px;
    }

    .sfl-tab-program-card {
        width: 100%;
    }

    .sfl-tab-feature-item {
        width: 100%;
    }

    .sfl-tab-feature-brand {
        flex-direction: column;
        padding-left: 0;
        gap: 10px;
    }

    .tab-cta {
        padding: 20px;
    }

    .features-section .study-grid-image {
        width: 50px;
        height: 50px;
    }

    .features-section .study-grid-image img {
        width: 22px;
        height: 22px;
    }

    .features-section .study-title {
        font-size: 18px;
        line-height: 26px;
    }

    .features-section .study-title:before {
        bottom: -10px;
        width: 20px;
    }

    .featstats-mission {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
    }

    .ent-tab-pathway-col{
        flex-wrap: wrap;
        justify-content: center;
    }

    .ent-pathway-card{
        flex: auto;
        width: 100%;
    }

    .ent-pathway-arrows{
        transform: rotate(90deg);
    }

    .ttt-note-cta{
        flex-direction: column;
        align-items: flex-start;
    }

    .ll-card-body{
        flex-direction: column;
    }

    .hero-inner-content .hero-banner-text {
        font-size: 14px;
        line-height: 24px;
        margin: 10px 0;
    }

    .sfl-hero:before {
        background: linear-gradient(90deg, rgba(255 255 255 / 90%) 100%, rgba(255, 255, 255, 0) 100%);
    }

    .sfl-prog-title {
        font-size: 20px;
        line-height: 28px;
        margin-bottom: 15px;
    }

    .sfl-prog-desc,
    .sfl-prog-features li{
        font-size: 14px;
    }

    .inner-cta-title {
        font-size: 24px;
    }

    .cmn-tag {
        padding: 6px 12px;
        font-size: 12px;
        line-height: 18px;
    }

    .sfl-why-card {
        padding: 20px 15px;
    }

    .sfl-why-card-title {
        font-size: 16px;
    }

    .common-inner-cta-section{
        padding: 40px 0;
    }

    .inner-banner-xl .inner-banner-title {
        font-size: 44px;
        line-height: 52px;
    }

    .intro-lead {
        font-size: 16px;
        line-height: 26px;
    }

    .welcome-image {
        height: 460px;
        padding: 0 10px;
    }

    .welcome-image:after {
        right: -10px;
        top: 24px;
        width: 46px;
        height: 46px;
    }

    .welcome-image:before {
        bottom: 18px;
        width: 62px;
        height: 62px;
    }

    .wwd-left {
        flex: 0 0 400px;
        max-width: 400px;
    }

    .wwd-venn {
        width: 400px;
        height: 400px;
        padding: 0;
    }

    .wwd-step{
        flex-wrap: wrap;
    }

    .wwd-step-content{
        flex: auto;
        width: calc(100% - 56px);
    }

    .wwd-step-img {
        width: 140px;
        height: 100px;
    }

    .global-local-title {
        font-size: 30px;
        line-height: 40px;
    }

    .global-local-sub {
        font-size: 18px;
        line-height: 26px;
    }

    .global-local-text {
        font-size: 16px;
        line-height: 26px;
    }

    .global-local-info-item{
        width: 100%;
    }

    .global-local-info-icon {
        width: 38px;
        height: 38px;
        font-size: 18px;
    }

    .future-cta-title {
        font-size: 28px;
        line-height: 36px;
    }

    .future-cta-text{
        font-size: 16px;
        line-height: 26px;
    }

    .video-popup-wrapper .modal-content .btn-close {
        right: 0px;
        top: -50px;
        width: 30px;
        height: 30px;
    }

    .about-video-wrapper {
        width: 100%;
        height: 100%;
    }

    .about-video {
        aspect-ratio: 16 / 9;
    }

    .flp-banner::before{
        background: linear-gradient(90deg, rgba(255 255 255 / 90%) 100%, rgba(255, 255, 255, 0) 100%);
    }

    .flp-dual-card{
        padding: 20px;
    }

    .ep-feat-title{
        font-size: 18px;
        margin-bottom: 10px;
    }

    .cc-banner::before{
        background: linear-gradient(90deg, rgba(255 255 255 / 90%) 100%, rgba(255, 255, 255, 0) 100%);
    }

    .cc-benefit{
        margin-top: 40px;
    }

    .cc-benefit-list {
        grid-template-columns: repeat(1, 1fr);
        padding: 20px;
    }

    .cc-benefit-item{
        padding: 0;
    }

    .cc-benefit-label {
        font-size: 14px;
        line-height: 20px;
        width: calc(100% - 50px);
    }

    .cc-benefit-item:not(:last-child):before{
        display: none;
    }

    .cc-banner {
        background-position: right -120px center;
    }

    .ep-banner {
        background-position: right -180px center;
    }

    .fs-hero-left .hero-banner-text,
    .is-hero-left .hero-banner-text{
        margin: 0;
    }

    .fs-fourcee-list{
        grid-template-columns: repeat(1, 1fr);
    }

    .fs-hero-row-bridge{
        padding: 15px;
    }

    .fs-state-wrapper,
    .fs-skill-card, .fs-outcomes-card{
        flex-direction: column;
        gap: 20px;
    }

    .fs-state-card {
        max-width: 100%;
        min-width: 100%;
    }
    
    .fs-skill-icon, .fs-outcomes-icon{
        width: 40px;
        height: 40px;
        font-size: 20px;
    }

    .fs-skill-card-title,
    .fs-outcomes-title{
        font-size: 20px;
        line-height: 28px;
    }

    .fs-banner-main-section:before{
        background: linear-gradient(90deg, rgba(255 255 255 / 90%) 100%, rgba(255, 255, 255, 0) 100%);
    }

    .fa-impact-row{
        flex-direction: column;
        row-gap: 30px;
    }

    .fs-skill-grid{
        gap: 15px;
    }

    .fs-skill-grid .col{
        width: calc(50% - 7.5px);
    }

    .fs-why-check-icon {
        font-size: 18px;
    }

    .fs-why-checklist li strong {
        font-size: 16px;
    }

    .edp-path-card,
    .edp-training-hub {
        padding: 22px 18px;
    }

    .edp-info-card-head {
        padding: 16px 18px;
    }

    .edp-about-list,
    .edp-philosophy-row {
        padding-left: 18px;
        padding-right: 18px;
    }

    .edp-incubation-action {
        margin-left: auto;
    }

    .global-local-section {
        background-position: left;
    }

    .fs-banner-main-section.edp-banner-main-section,
    .is-banner-main-section{
        background-image: none !important;
    }

    .edp-banner-main-section.fs-banner-main-section:before,
    .is-banner-main-section:before{
        display: none;
    }

    .is-banner-main-section .header-section-alt-center,
    .fs-banner-main-section .header-section-alt-center{
        padding: 20px 0 0px;
    }

    .is-apply-bar{
        gap: 16px;
    }

    .is-apply-btn{
        padding: 10px 24px;
        font-size: 14px;
        line-height: 24px;
    }

    .edp-fourcee-content p {
        font-size: 14px;
        line-height: 24px;
    }

    .is-impact-card{
        padding: 10px 0;
    }

    .is-impact-stat{
        padding: 10px 0;
    }

    .ttp-banner-main-section.fs-banner-main-section:before{
        display: none;
    }

    .fs-banner-main-section.ttp-banner-main-section{
        background-image: none !important;
    }

    .about-mission-vision-wrap.vm-grid{
        margin-top: 40px;
    }

    .fs-hero-row-top {
        row-gap: 20px;
    }

    .hero-inner-content .hero-title {
        padding-bottom: 12px;
        margin-bottom: 15px;
    }

    .edp-fourcee-grid{
        flex-wrap: wrap;
        align-items: center;
    }

    .edp-fourcee-content{
        width: 100%;
    }

    .ips-type-icon  { width: 42px; height: 42px; }
    .ips-type-title { font-size: 16px; }

    /* Industries 2 per row */
    .ips-industries-section .col-4 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .ips-counter-stat-number { font-size: 30px; }
    .ips-counter-stat-label  { font-size: 12px; }
    .ips-counter-stat-icon   { width: 44px; height: 44px; font-size: 20px; margin-bottom: 10px; }

    .ips-gallery-grid { grid-template-columns: repeat(2, 1fr); }
    .ips-gallery-item { height: 110px; }

    .ips-lang-cover-title { font-size: 16px; }

    .ips-why-list li { font-size: 13px; }
    .ips-counter-number { font-size: 28px; }

    .fs-banner-main-section.ips-banner-main-section{
        background-image: none !important;
    }
    .ips-banner-main-section.fs-banner-main-section:before{
        display: none;
    }

    .ips-feature-list .ep-feature-item {
        width: calc(50% - 5px);
    }

    .ep-feature-item:nth-child(4){
        border: 0;
    }

    .ips-fourcee-icon {
        font-size: 40px;
    }

    .ips-why-list{
        grid-template-columns: repeat(1, 1fr);
    }

    .ips-why-list li i {
        font-size: 13px;
    }

    .ips-why-list li i {
        margin: -2px 0 0 0;
    }

    .trl-lang-card { padding: 18px 14px; border-radius: 14px; }
    .trl-major-grid { grid-template-columns: repeat(2, 1fr); }
    .trl-major-count { font-size: 16px; }
    .trl-major-count .red-text { font-size: 20px; }
    .trl-lang-name { font-size: 12px; }
    .trl-lang-flag { font-size: 16px; }

    /* Rare: 2 per row */
    .trl-rare-item {
        flex: 0 0 calc(50% - 1px);
    }

    .trl-rare-item{border: 0px;}
    .trl-rare-bg-globe { font-size: 100px; }
    .trl-section { padding: 30px 0; }
    .trl-types-grid{row-gap: 18px; column-gap: 12px;}
    .trl-type-title { font-size: 16px; }
    .trl-type-desc{font-size: 14px;}

    .trl-addl-card,
    .trl-industries-card{
        padding: 18px;
    }

    .trl-industries-grid{    
        grid-template-columns: repeat(2, 1fr);
    }

    .trl-addl-item {
        width: calc(50% - 8px);
    }

    .trl-addl-grid{
        column-gap: 14px;
        row-gap: 24px;
    }

    .fs-banner-main-section.trp-main-section{
        background-image: none !important;
    }

    .trp-main-section.fs-banner-main-section:before{
        display: none;
    }

    .lls-what-tag {
        padding: 5px;
        width: calc(50% - 10px);
        flex: auto;
    }

    .lls-what-tag:not(:last-child):before{
        display: none;
    }

    .lls-physical-desc {
        font-size: 16px;
    }

    .lls-physical-list{
        gap: 6px;
    }

    .lls-physical-list li{
        font-size: 14px;
        line-height: 1.25;
    }
    /* lls-benefits — 575px */
    .lls-benefits-grid         { grid-template-columns: repeat(2, 1fr); }
    .lls-benefit-item:nth-child(2n) { border-right: none; }
    .lls-benefit-item          { padding: 18px 8px; }
    .lls-benefit-icon          { width: 44px; height: 44px; font-size: 22px; }
    .lls-benefits-heading      { font-size: 16px; }
    .lls-benefits-header-line  { max-width: 60px; }
    /* lls-counter — 575px */
    .lls-counter-grid          { grid-template-columns: repeat(2, 1fr); }
    .lls-counter-item          { padding: 20px 12px 16px; }
    .lls-counter-number        { font-size: 30px; }
    .lls-counter-icon          { width: 44px; height: 44px; font-size: 22px; }
    .lls-counter-label         { font-size: 12px; }
    .lls-counter-section       { padding: 36px 0; }

    .lls-vaksudha-desc,
    .lls-vaksudha-list li{
        font-size: 14px;
    }

    .lls-vaksudha-list li{
        gap: 8px;
    }

    .lls-vaksudha-list li i {
        font-size: 14px;
    }

    .fs-banner-main-section.lls-main-section{
        background-image: none !important;
    }

    .fs-banner-main-section.lls-main-section:before{
        display: none;
    }

    /* career — 575px */
    .career-intro-title {
        font-size: 24px;
    }

    .career-intro-text {
        font-size: 14px;
    }

    .career-hiring-title {
        font-size: 20px;
        margin-bottom: 20px;
    }

    .career-job-card {
        padding: 16px 14px;
    }

    .career-contact-heading {
        font-size: 14px;
    }

    .career-contact-or {
        font-size: 12px;
    }

    .career-job-details p {
        font-size: 13px;
    }

    .career-job-details ul li {
        font-size: 13px;
    }

    .career-life-cell {
        min-height: 160px;
    }

    .career-life-text {
        padding: 20px 16px;
    }

    .career-life-different-title {
        font-size: 22px;
    }

    .career-life-join-cta {
        font-size: 14px;
    }

    .career-life-philosophy-list li {
        font-size: 13px;
    }

    .career-job-details ul li::before{
        width: 5px;
        height: 5px;
    }

    .cf-input, .wpcf7-form-control-wrap .select2-selection{
        min-height: 46px;
        padding: 6px 12px !important;
    }

    .wpcf7-form-control-wrap .select2-selection{
        padding: 6px 8px !important;
    }

    .career-modal-popup .modal-dialog {
        max-width: 95%;
        margin-left: auto;
        margin-right: auto;
    }

    .cf-submit-center-row {
        margin-top: 30px;
    }

    .bd-cat-badge {
        top: 12px;
        left: 12px;
        padding: 4px 12px;
        font-size: 11px;
    }

    .bd-title {
        font-size: 24px;
    }

    .bd-body,
    .bd-body ul li, .bd-body ol li{
        font-size: 14px;
        line-height: 20px;
    }

    .bd-post-nav{
        gap: 12px;
        margin-top: 24px;
        padding-top: 18px;
        flex-direction: column;
    }

    .ips-feature-list .ep-feature-item:nth-child(2){
        border-right: 0;
    }

    .ttp-quote-mark {
        font-size: 28px;
    }

    .ttp-quote-open {
        left: 10px;
    }

    .ttp-quote-close {
        right: 10px;
    }

    .page-template-translation .newsletter-cta-content-wrapper .cmn-section-title{
        max-width: 100%;
    }

    .fsl-banner-bg:before {
        background: linear-gradient(90deg, rgb(255 255 255 / 90%) 100%, rgba(255, 255, 255, 0) 100%);
    }

    .fsl-cefr-track{
        grid-template-columns: repeat(2, 1fr);
    }

    .fsl-experts-grid,
    .fsl-exams-grid,
    .fsl-why-hk-list{
        grid-template-columns: repeat(1, 1fr);
    }

    .fsl-why-hk-list{
        width: 100%;
    }

    .fsl-why-hk-list li{
        font-size: 14px;
    }

    .fsl-lang-strip-wrap{
        padding: 20px 15px;
        flex-direction: column;
        align-items: flex-start;
    }

    .fsl-lang-strip-header,
    .fsl-lang-strip-flags{
        width: 100%;
    }

    .fsl-stat-icon {
        font-size: 28px;
    }

    .fsl-stat-info strong, .fsl-stat-number {
        font-size: 24px;
    }

    .fsl-stat-info span {
        font-size: 14px;
    }
    
    .fsl-cefr-note i{
        display: none;
    }

    .floating-icon-wrap .floating-icon {
        width: 50px;
        height: 50px;
    }

    .floating-icon-wrap .floating-icon img {
        width: 25px;
    }
}

@media (max-width: 479px){

    .about-rect-img {
        max-width: 220px;
    }

    .cmn-curv-img {
        max-width: 140px;
    }

    .sfl-hero-heading {
        font-size: 28px;
    }

    .sfl-hero-tagline {
        font-size: 15px;
    }

    .sfl-illus-books {
        max-width: 240px;
    }

    .sfl-book {
        font-size: 11px;
        padding: 7px 14px;
    }

    .ep-feat-card {
        padding: 22px 16px 18px;
    }

    .cc-benefit-list {
        grid-template-columns: 1fr;
    }

    .cc-benefit-icon {
        width: 38px;
        height: 38px;
        font-size: 17px;
    }

    .cc-highlight-title {
        font-size: 16px;
    }

    .cc-highlight-list li {
        font-size: 13px;
    }

    .flp-banner-title {
        font-size: 26px;
    }

    .flp-book {
        padding: 9px 14px;
        font-size: 12px;
    }

    .flp-why-card, .flp-learn-card {
        padding: 15px 5px;
    }

    .flp-prog-card {
        padding: 20px 16px 18px;
    }

    /* FLP 479px — tightest mobile */
    .flp-banner-title {
        font-size: 24px;
    }

    .flp-banner-para {
        font-size: 13px;
    }

    /* Why grid: 1-col on very small screens */
    .flp-why-title {
        font-size: 14px;
    }

    /* Learn grid: 1-col */
    .flp-why-learn .row .col {
        flex: 0 0 50%;
        max-width: 50%;
    }

    /* Prog */
    .flp-prog-icon {
        width: 44px;
        height: 44px;
        font-size: 20px;
    }

    .flp-prog-desc,
    .flp-prog-list li {
        font-size: 13px;
    }

    .flp-prog-list li i{
        margin: 0;
        font-size: 13px;
    }

    /* Dual */
    .flp-dual-title {
        font-size: 16px;
    }

    .flp-dual-sub {
        font-size: 13px;
    }

    .flp-dual-list li {
        font-size: 13px;
    }

    /* Lang */
    .flp-lang-name {
        font-size: 14px;
    }

    .flp-lang-desc {
        font-size: 12px;
    }

    /* Section title */
    .flp-more-btn {
        width: 100%;
        justify-content: center;
        font-size: 13px;
    }

    .cta-info-line{
        font-size: 14px;
        align-items: flex-start;
        text-align: center;
    }

    .cta-info-line i{
        margin-top: 2px;
    }

    .common-cta-end-sec{
        align-items: center;
    }

    .inner-cta-listing{
        grid-template-columns: repeat(1, 1fr);
    }

    .inner-cta-listing i{
        width: 24px;
    }

    .inner-cta-listing li{
        justify-content: center;
    }

    .inner-cta-listing span{ 
        width: calc(100% - 130px);
        text-align: left;      
    }

    .fsl-banner-title {
        font-size: 26px;
    }

    .fsl-flag-emoji {
        font-size: 36px;
    }

    .fsl-cefr-badges {
        gap: 5px;
    }

    .fsl-format-card,
    .fsl-career-card {
        padding: 12px 8px;
    }

    .featstats-bar {
        gap: 25px;
        padding: 25px 15px;
    }

    .featstats-item {
        width: calc(33% - 10px);
        flex: auto;
    }

    .cmn-featstats:before{
        display: none;
    }

    .cmn-section-sub {
        font-size: 18px;
        line-height: 28px;
        letter-spacing: 0;
    }

    .testi-stat-item {
        padding: 0;
        width: calc(50% - 6px);
        border: 0;
        gap: 10px;
    }

    .testi-stat-icon {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }

    .testi-stat-content {
        width: calc(100% - 56px);
    }

    .testi-stat-value {
        font-size: 22px;
        line-height: 30px;
    }

    .footer-counter-content-grid {
        width: calc(33% - 8px);
    }

    .footer-counter-content {
        gap: 12px;
    }

    .footer-counter-numbers {
        font-size: 22px;
        line-height: 32px;
    }

    .footer-made-with-text, .footer-page-link, .footer-center-text {
        font-size: 12px;
        line-height: 16px;
    }

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

    .testi-stats-bar {
        column-gap: 10px;
        row-gap: 15px;
    }

    .cf-steps-heading {
        margin-bottom: 10px;
        font-size: 22px;
        line-height: 30px;
    }

    .cf-card-title {
        font-size: 22px;
        line-height: 28px;
    }

    .fs-tab-skills-grid,
    .fs-tab-highlights-bar,
    .tth-tab-skills-grid,
    .ent-tab-philosophy-grid,
    .interp-tab-grid,
    .trans-tab-grid{
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .interp-lang-flags{
        flex-wrap: wrap;
    }

    .fs-tab-highlights-bar{
        row-gap: 20px;
    }

    .interp-trust-item{
        width: 100%;
    }

    .trans-other-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .interp-lang-strip-left {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .ttt-counter-number{
        font-size: 22px;
    }

    .tab-cta-lead{
        flex-direction: column;
        align-items: flex-start;
    }

    .ttt-counter-label {
        font-size: 10px;
    }

    .ll-card {
        padding: 15px;
    }

    .hero-title {
        font-size: 34px;
        line-height: 44px;
    }

    .common-inner-cta-illus {
        max-width: 100%;
    }

    .inner-cta-btn{
        font-size: 14px;
        line-height: 24px;
    }

    .welcome-image img {
        border-top-left-radius: 100px;
        border-bottom-right-radius: 100px;
    }

    .vm-grid-icon{
        display: none;
    }

    .vm-card{
        flex-direction: column;
        align-items: flex-start;
    }

    .empower-title {
        font-size: 28px;
    }

    .highlights-stat-item {
        width: 100%;
        flex: auto;
    }

    .cmn-section-title {
        font-size: 28px;
        line-height: 40px;
    }

    .wwd-intro .section-content {
        font-size: 16px;
        line-height: 26px;
    }

    .wwd-left {
        flex: 0 0 320px;
        max-width: 320px;
    }

    .wwd-venn {
        width: 320px;
        height: 320px;
        padding: 0;
    }

    .wwd-quad-education{
        border-radius: 20px 10px 0 10px;
    }

    .wwd-quad-translation {
        border-radius: 10px 20px 10px 0;
    }

    .wwd-quad-interpretation {
        border-radius: 10px 0 10px 20px;
    }

    .wwd-quad-labs {
        border-radius: 0 10px 20px 10px;
    }

    .wwd-venn-ring {
        inset: -18px;
        border-radius: 20px;
    }

    .wwd-venn-center{
        width: 100px;
        height: 100px;
        padding: 3px;
    }

    .wwd-venn-logo {
        width: 20px;
        height: 20px;
    }

    .wwd-venn-brand {
        font-size: 12px;
    }

    .wwd-venn-tagline {
        font-size: 8px;
    }

    .wwd-quad-title {
        font-size: 12px;
    }

    .wwd-quad-text {
        font-size: 9px;
    }

    .wwd-quad-education:before,
    .wwd-quad-interpretation:before {
        left: -20px;
    }

    .wwd-quad-translation:before,
    .wwd-quad-labs:before{
        right: -20px;
    }

    .future-cta-feature-title {
        font-size: 18px;
        line-height: 24px;
    }

    .inner-cta-title {
        font-size: 22px;
    }

    .inner-cta-sub-title {
        font-size: 16px;
    }

    .ep-cefr-table thead tr th,
    .ep-cefr-table tbody td{
        padding: 10px 12px;
    }

    .ep-level-label{
        font-size: 13px;
        padding: 4px 10px;
    }

    .ep-cefr-table thead tr th{
        font-size: 14px;
    }

    .ep-cefr-badge {
        font-size: 18px;
    }

    .page-template-care-connect-programme .common-cta-end-sec{
        align-items: center;
    }

    .care-connect-cta-primary .cta-info-line{
        align-items: flex-start;
    }

    .inner-cta-desc{
        font-size: 14px;
    }

    .fs-campus-label-right{
        justify-content: flex-start;
    }

    .fs-skill-card, .fs-outcomes-card{
        padding: 20px;
    }

    .fs-skill-card-title,
    .fs-outcomes-title {
        font-size: 18px;
        line-height: 26px;
    }

    .fs-programme-hero-content {
        width: calc(100% - 60px);
    }

    .fs-programme-hero-icon {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }

    .fs-programme-hero-content strong {
        font-size: 18px;
        line-height: 28px;
    }

    .fs-programme-hero-content span {
        font-size: 14px;
        line-height: 18px;
    }

    .fs-skill-item{
        padding: 15px 8px;
    }

    .fs-skill-item-icon {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }

    .fs-skill-item p {
        font-size: 14px;
        line-height: 22px;
    }

    .welcome-split{
        gap: 0;
    }

    .edp-path-title {
        font-size: 18px;
        line-height: 26px;
        margin: 0;
    }

    .edp-path-sub {
        font-size: 14px;
        line-height: 22px;
    }

    .edp-path-head {
        margin-bottom: 10px;
    }

    .edp-hero-bg {
        padding-bottom: 20px;
    }

    .edp-fourcee-card {
        padding: 15px;
    }

    .edp-fourcee-content{
        gap: 5px;
    }

    .edp-fourcee-title {
        font-size: 18px;
        line-height: 26px;
    }

    .edp-training-icon {
        width: 46px;
        height: 46px;
        font-size: 20px;
    }

    .edp-path-list li {
        gap: 6px;
        font-size: 14px;
        line-height: 24px;
    }

    .edp-philosophy-icon {
        width: 38px;
        height: 38px;
        font-size: 16px;
    }

    .edp-impact-stats{
        padding: 30px 0 120px;
        row-gap: 20px;
    }
    
    .fs-impact-icon-wrap {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }

    .edp-fourcee-grid{
        gap: 10px;
    }

    .is-journey-icon {
        width: 48px;
        height: 48px;
        font-size: 20px;
    }

    .is-apply-title {
        font-size: 18px;
        line-height: 26px;
    }

    .cmn-section-title::after{
        width: 34px;
    }

    .ttp-about-text.cmn-section-sub {
        font-size: 16px;
        line-height: 28px;
    }

    .ttp-icon-list li {
        gap: 12px;
        font-size: 14px;
        line-height: 22px;
    }

    .ttp-career-item {
        width: calc(48% - 7px);
    }

    .ttp-model-title {
        font-size: 20px;
        line-height: 30px;
    }

    .welcome-content .header-section-alt-center {
        padding: 20px 0 0 0;
    }

    .welcome-content .hero-sub-tag{
        margin-bottom: 0px;
    }

    .ips-type-card  { padding: 16px 12px 14px; }
    .ips-type-icon  { width: 40px; height: 40px; font-size: 18px; margin-bottom: 10px; }
    .ips-type-list li { font-size: 11px; }

    /* Counters 1+1 column */
    .ips-counters-grid { grid-template-columns: 1fr 1fr; }
    .ips-counter-stat-number { font-size: 28px; }
    .ips-counter-stat-label  { font-size: 11px; }

    .ips-gallery-grid { grid-template-columns: repeat(1, 1fr); }

    .ips-industry-icon { width: 40px; height: 40px; font-size: 18px; }

    .ips-counter-number { font-size: 26px; }
    .ips-lang-cover-inner { padding: 16px; }

    .ips-counter-bar{
        padding: 12px;
    }

    .trl-major-grid { grid-template-columns: 1fr 1fr; }
    .trl-lang-name  { font-size: 12px; }
    .trl-major-count .red-text { font-size: 19px; }

    .trl-type-item{width: 100%;}

    .trl-addl-card, .trl-industries-card {
        padding: 16px 8px;
    }

    .trl-addl-item {
        width: 100%;
    }

    .trl-addl-title{
        font-size: 14px;
    }

    .trl-industry-icon {
        width: 36px;
        height: 36px;
        font-size: 18px;
    }

    .trl-addl-desc {
        font-size: 13px;
    }

    .trl-industries-grid {
        column-gap: 6px;
    }

    .trl-feature-grid {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 6px;
        row-gap: 12px;
    }

    .trl-feature-grid-item i {
        font-size: 24px;
    }

    .trl-feature-grid-item span {
        font-size: 13px;
    }

    .trl-counter-bar-inner{
        row-gap: 16px;
        column-gap: 10px;
    }

    .trl-cbar-icon {
        width: 38px;
        height: 38px;
        font-size: 18px;
    }

    .trl-cbar-number {
        font-size: 18px;
    }

    .trl-cbar-reach-title{
        font-size: 14px;
    }

    .ttp-incubation-cta.edp-incubation-cta{
        padding: 12px 16px;
    }

    .ttp-incubation-cta .edp-incubation-illus {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }

    .lls-physical-content {
        padding: 20px;
    }

    .lls-physical-desc {
        margin-bottom: 15px;
    }

    .lls-physical-equipment {
        grid-template-columns: repeat(2, 1fr);
    }

    .lls-equip-item:nth-child(-n + 4){
        border-bottom: 1px solid rgba(0, 65, 107, 0.08);
    }

    .lls-equip-label {
        font-size: 13px;
    }
    /* lls-benefits — 479px */
    .lls-benefits-grid        { grid-template-columns: repeat(2, 1fr); }
    .lls-benefit-item         { padding: 16px 8px; gap: 10px; }
    .lls-benefit-icon         { width: 40px; height: 40px; font-size: 20px; }
    .lls-benefits-heading     { font-size: 15px; letter-spacing: 0.04em; }
    .lls-benefits-header      { margin-bottom: 24px; gap: 12px; }
    .lls-benefits-header-line { max-width: 40px; }
    /* lls-counter — 479px */
    .lls-counter-item         { padding: 16px 10px 14px; }
    .lls-counter-number       { font-size: 26px; }
    .lls-counter-icon         { width: 38px; height: 38px; font-size: 20px; }
    .lls-counter-section      { padding: 28px 0; }

    .lls-equip-item:nth-child(3){
        border-right: 1px solid rgba(0, 65, 107, 0.08);
    }

    /* career — 479px */
    .career-intro-title {
        font-size: 22px;
    }

    .career-intro-text {
        font-size: 13px;
    }

    .career-contact-card {
        padding: 16px 12px;
    }

    .career-contact-link {
        font-size: 14px;
        gap: 6px;
    }

    .career-hiring-title {
        font-size: 18px;
    }

    .career-job-details ul li {
        font-size: 12px;
    }

    .career-job-meta-item{
        font-size: 14px;
        line-height: 1.7;
    }

    .career-job-actions .btn-accent,
    .career-job-actions .btn-accent-alt{
        font-size: 14px;
        line-height: 24px;
        min-width: 140px;
        min-height: 38px;
    }

    .career-section .cmn-section-title{
        max-width: 75%;
    }

    .career-life-philosophy-list{
        grid-template-columns: repeat(1, 1fr);
    }

    .career-life-join{
        margin-top: 20px;
    }

    .career-job-actions{
        flex-direction: column;
        align-items: flex-start;
    }

    .career-modal-title {
        font-size: 16px;
    }

    .cf-input-select .wpcf7-form-control-wrap input[type="file"] {
        font-size: 12px;
    }

    .cf-input-select .wpcf7-form-control-wrap input[type="file"]::file-selector-button {
        padding: 6px 8px;
        margin-right: 10px;
    }

    .cf-submit-center-row {
        margin-top: 20px;
    }

    .bd-hero-img{
        height: 160px;
    }

    .bd-cat-badge {
        top: 10px;
        left: 10px;
        padding: 3px 10px;
        font-size: 9px;
    }

    .bd-meta-item {
        font-size: 12px;
    }

    .bd-title {
        font-size: 22px;
        margin-bottom: 16px;
    }

    .bd-body p {
        margin-bottom: 12px;
    }

    .bd-body ul li, .bd-body ol li {
        margin-bottom: 5px;
    }

    .bd-body ul, .bd-body ol {
        padding-left: 12px;
        margin-bottom: 8px;
    }

    .bd-author-box {
        padding: 16px 12px;
        gap: 12px;
        margin-top: 26px;
    }

    .bd-author-avatar {
        width: 52px;
        height: 52px;
    }

    .bd-author-label {
        font-size: 12px;
        line-height: 18px;
    }

    .bd-author-name {
        font-size: 15px;
        line-height: 22px;
    }

    .blog-image {
        height: 160px;
    }

    .blog-category {
        top: 8px;
        left: 8px;
        padding: 4px 8px;
        font-size: 10px;
        line-height: 14px;
    }

    .blog-card-icon {
        left: 15px;
        bottom: -20px;
        width: 38px;
        height: 38px;
        font-size: 16px;
    }

    .blog-title {
        font-size: 16px;
        line-height: 24px;
    }

    .blog-sub {
        font-size: 14px;
        line-height: 22px;
    }

    .ttp-quote-open {
        top: 10px;
    }

    .ttp-quote-close{
        bottom: 10px;
    }

    .lls-what-icon-box {
        width: 60px;
        height: 60px;
    }

    .lls-what-icon-box > i {
        font-size: 24px;
    }

    .fsl-lang-strip-flags{
        grid-template-columns: repeat(2, 1fr);
    }

    .fsl-lang-flag-item img {
        width: 24px;
        height: 24px;
    }

    .fsl-stats-counters{
        grid-template-columns: repeat(1, 1fr);
    }

    .fsl-cefr-track {
        grid-template-columns: repeat(1, 1fr);
    }

    .fsl-career-grid {
        gap: 10px;
    }
    
    .fsl-career-title {
        font-size: 14px;
    }

    .fsl-stat-info strong, .fsl-stat-number {
        font-size: 20px;
    }
}

@media (max-width: 400px){
    .tabbing-image-wrapper {
        max-width: 250px;
    }

    .img-decor::before {
        left: -5px;
    }

    .img-decor::after {
        left: 5px;
    }

    .hero-banner-btn-wrap{
        align-items: flex-start;
        flex-direction: column;
        row-gap: 10px;
    }

    .hero-banner-left-side {
        padding: 40px 0;
    }

    .hero-title {
        font-size: 36px;
        line-height: 44px;
    }

    .hero-banner-text {
        font-size: 16px;
        line-height: 26px;
    }

    .newsletter-cta-section {
        padding-bottom: 40px;
    }

    .cmn-section-title {
        font-size: 26px;
        line-height: 36px;
        letter-spacing: -1.5px;
    }

    .cmn-section-sub {
        font-size: 18px;
        line-height: 26px;
    }
   
    .about-rect-img {
        max-width: 170px;
    }

    .cmn-curv-img {
        max-width: 110px;
    }

    .about-top-img:before {
        width: 60px;
        height: 60px;
        left: -12px;
        top: -14px;
    }

    .about-bottom-radius-img:before {
        width: 20px;
        height: 20px;
        right: -11px;
        top: 40px;
    }

    .about-top-radius-img:before {
        width: 40px;
        height: 40px;
        top: 30px;
        left: -12px;
    }

    .about-bottom-img:before {
        width: 50px;
        height: 50px;
        bottom: -10px;
        right: -10px;
    }

    .tab-hero-title-line {
        font-size: 24px;
        line-height: 32px;
    }

    .tab-hero-title::after {
        width: 32px;
        margin-top: 12px;
    }

    .tab-main{
        padding: 15px;
    }

    .newsletter-cta-content-wrapper .cmn-section-title {
        font-size: 24px;
        line-height: 34px;
    }

    .newsletter-cta-section {
        padding-bottom: 50px;
    }
    
    .footer-counter-content-grid {
        width: calc(50% - 8px);
    }

    .hero-inner-content .hero-title {
        font-size: 32px;
        line-height: 40px;
    }

    .welcome-image img {
        border-top-left-radius: 50px;
        border-bottom-right-radius: 50px;
    }

    .welcome-content .cmn-section-title {
        font-size: 28px;
        line-height: 36px;
    }

    .vm-title {
        font-size: 22px;
        line-height: 28px;
    }

    .empower-title {
        font-size: 24px;
    }

    .empower-sub {
        font-size: 16px;
        line-height: 26px;
    }

    .wwd-left {
        flex: 0 0 260px;
        max-width: 260px;
    }

    .wwd-venn {
        width: 260px;
        height: 260px;
        padding: 0;
        gap: 5px;
    }

    .wwd-quad-icon {
        width: 30px;
        height: 30px;
        font-size: 15px;
        margin-bottom: 6px;
    }

    .wwd-quad-title {
        font-size: 11px;
    }

    .wwd-quad{
        padding: 6px;
    }

    .wwd-quad-text{
        max-width: 100%;
    }

    .wwd-purpose-note p {
        font-size: 12px;
    }

    .wwd-step-content {
        width: 100%;
    }

    .wwd-step-img {
        width: 170px;
        height: 110px;
    }

    .global-local-title {
        font-size: 26px;
        line-height: 36px;
    }

    .global-local-sub {
        font-size: 16px;
        line-height: 24px;
    }

    .future-cta-feature-text {
        font-size: 14px;
        line-height: 22px;
    }

    .wwd-venn-logo {
        width: 18px;
        height: 18px;
    }

    .wwd-venn-tagline {
        font-size: 7px;
    }

    .wwd-venn-center {
        width: 90px;
        height: 90px;
        padding: 3px;
    }

    .flp-why-title {
        font-size: 13px;
    }

    .cc-highlight-icon {
        width: 48px;
        height: 48px;
        font-size: 24px;
    }

    .ep-feature-icon {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }

    .ep-feature-label {
        font-size: 13px;
    }

    .ips-feature-list .ep-feature-label{
        font-size: 12px;
    }

    .ips-fourcee-icon {
        font-size: 36px;
    }

    .ips-fourcee-card {
        padding: 12px;
    }

    .ips-fourcee-grid {
        gap: 10px;
    }

    .ips-fourcee-content h3 {
        font-size: 16px;
        line-height: 24px;
    }

    .fs-bridge-text {
        font-size: 14px;
        line-height: 24px;
    }

    .fs-skill-card-title,
    .fs-outcomes-title {
        font-size: 16px;
        line-height: 24px;
    }

    .fs-checklist li {
        font-size: 14px;
        line-height: 26px;
    }

    .fs-programme-hero-card{
        padding: 18px;
    }

    .fs-programme-hero-label {
        margin-bottom: 20px;
    }

    .fs-programme-hero-label {
        font-size: 16px;
        line-height: 24px;
        margin-bottom: 15px;
    }

    .fs-programme-hero-block{
        gap: 10px;
    }

    .fs-fourcee-list {
        gap: 15px;
    }

    .welcome-image {
        height: 250px;
        padding: 0 10px;
    }

    .welcome-image:before {
        bottom: 8px;
        width: 48px;
        height: 48px;
    }

    .welcome-image:after {
        right: -6px;
        top: 14px;
        width: 36px;
        height: 36px;
    }

    .edp-path-outcome {
        padding: 10px 60px 10px 10px;
    }

    .edp-pathway-sml-img {
        right: 5px;
        width: 60px;
        height: 60px;
    }

    .edp-about-list {
        padding: 18px;
    }

    .fs-why-check-icon {
        font-size: 16px;
    }

    .fs-why-checklist li {
        gap: 8px;
    }

    .edp-about-list, .edp-philosophy-row {
        padding-left: 12px;
        padding-right: 12px;
    }

    .edp-philosophy-row{
        gap: 8px;
    }

    .edp-impact-stats{
        grid-template-columns: repeat(1, minmax(0, 1fr));
        padding: 30px 0 80px;
        background-position: bottom -20px center;
    }

    .edp-incubation-cta{
        flex-direction: column;
        gap: 12px;
        align-items: flex-start;
    }

    .edp-outcome-bar{
        padding: 16px;
        flex-direction: column;
        align-items: flex-start;
    }

    .is-journey-step {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 0;
    }

    .cmn-tag {
        padding: 4px 10px;
        font-size: 10px;
        line-height: 18px;
    }

    .ttp-info-section {
        padding-top: 40px;
    }

    .ttp-bottom-section {
        padding-bottom: 80px;
    }

    .ttp-about-wrap {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .ttp-model-step {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .ttp-model-body {
        padding: 20px 16px;
    }

    .ttp-stats-row {
        grid-template-columns: 1fr;
    }

    .ttp-career-grid {
        grid-template-columns: 1fr;
    }

    .ttp-career-item-wide {
        grid-column: span 1;
    }

    .ttp-highlight-icon{
        width: 42px;
        height: 42px;
        font-size: 22px;
    }

    .ttp-highlight-item p {
        font-size: 14px;
        line-height: 22px;
    }

    .fs-hero.ttp-hero {
        height: auto;
    }

    .common-padding {
        padding: 30px 0;
    }
    
    .edp-fourcee-title {
        font-size: 16px;
        line-height: 26px;
    }
    
    .edp-fourcee-icon {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }

    .edp-fourcee-grid {
        gap: 6px;
    }

    .ips-type-icon  { width: 36px; height: 36px; font-size: 16px; }

    .ips-counters-grid      { grid-template-columns: 1fr; padding: 20px 10px; row-gap: 20px;}
    .ips-counter-stat-number{ font-size: 26px; }
    .ips-counter-stat-label { font-size: 11px; }
    .ips-counter-stat-icon  { width: 38px; height: 38px; font-size: 17px; margin-bottom: 8px; }

    .ips-lang-cover-inner { padding: 14px; }
    .ips-counter-number { font-size: 24px; }

    .ips-lang-cover-icon {
        width: 36px;
        height: 36px;
        font-size: 16px;
    }

    .trl-lang-card   { padding: 14px 12px; }
    .trl-major-grid  { grid-template-columns: 1fr 1fr; }
    .trl-lang-name   { font-size: 11px; }
    .trl-major-count .red-text { font-size: 18px; }

    .trl-rare-title  { font-size: 12px; font-size: 16px;}
    .trl-rare-latin  { font-size: 14px; }
    .trl-section     { padding: 26px 0; }

    .trl-counter-bar-inner {
        row-gap: 12px;
    }

    .trl-cbar-item{
        width: 100%;
    }

    .lls-physical-desc {
        font-size: 14px;
        line-height: 1.5;
    }

    .lls-physical-list li i{
        font-size: 16px;
    }
    /* lls-benefits — 400px */
    .lls-benefits-grid        { grid-template-columns: 1fr 1fr; }
    .lls-benefit-item         { padding: 14px 4px; gap: 8px; }
    .lls-benefit-label { font-size: 12px; }
    .lls-benefit-icon         { width: 36px; height: 36px; font-size: 18px; }
    .lls-benefits-heading     { font-size: 14px; }
    .lls-benefits-header-line { max-width: 30px; }
    /* lls-counter — 400px */
    .lls-counter-grid         { grid-template-columns: 1fr 1fr; }
    .lls-counter-item         { padding: 14px 8px 12px; }
    .lls-counter-number       { font-size: 22px; }
    .lls-counter-icon         { width: 34px; height: 34px; font-size: 18px; }
    .lls-counter-section      { padding: 24px 0; }

    .book-appointment-btn {
        font-size: 11px;
        gap: 6px;
    }

    .book-appointment-btn svg {
        width: 20px;
        height: 20px;
    }
}