:root {
    --site-primary: #1733b5;
    --site-primary-dark: #102582;
    --site-secondary: #148c86;
    --site-accent: #fda31b;
    --site-accent-dark: #d98608;
    --site-soft: #eef2ff;
    --theme-color: var(--site-primary);
    --theme-color2: var(--site-accent);
    --theme-color-light: rgba(23, 51, 181, .09);
    --footer-bg: #071d58;
    --footer-bg2: var(--site-primary);
    --bs-success: var(--site-primary);
    --bs-success-rgb: 23, 51, 181;
    --body-font: 'Inter', 'Segoe UI', Roboto, Arial, sans-serif;
    --heading-font: 'Plus Jakarta Sans', 'Inter', 'Segoe UI', Arial, sans-serif;
}

html,
body,
.smile-body {
    font-family: var(--body-font) !important;
}

button,
input,
select,
textarea,
.btn,
.theme-btn,
.form-control {
    font-family: var(--body-font) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.smile-brand-copy strong,
.smile-brand-copy b,
.smile-nav-links .ints-ul a,
.smile-footer h3,
.smile-footer h4 {
    font-family: var(--heading-font) !important;
    letter-spacing: 0 !important;
}

/* SMILE School image-converted home */
.smile-body {
    margin: 0;
    padding-top: 146px;
    background: #f7f9fd;
    color: #061d3f;
    font-family: var(--body-font);
    font-size: 16px;
    line-height: 1.65;
}

.smile-home {
    background: linear-gradient(180deg, #ffffff 0%, #f6f9fd 44%, #ffffff 100%);
}

.smile-container {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto;
}

.smile-topbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 51;
    background: #05264f;
    color: #fff;
    font-size: 14px;
}

.smile-topbar .smile-container {
    width: min(1500px, calc(100% - 100px));
}

.smile-topbar-inner,
.smile-contact-strip,
.smile-social,
.smile-navbar-inner {
    display: flex;
    align-items: center;
}

.smile-topbar-inner {
    min-height: 50px;
    justify-content: space-between;
    gap: 20px;
}

.smile-contact-strip {
    flex-wrap: nowrap;
    gap: 14px;
    min-width: 0;
}

.smile-contact-strip a,
.smile-social a {
    color: #fff;
    text-decoration: none;
    white-space: nowrap;
}

.smile-contact-strip i {
    color: #ffc400;
    margin-right: 7px;
}

.smile-social {
    gap: 9px;
}

.smile-social a {
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(255,255,255,.15);
    font-size: 12px;
}

.smile-social .social-facebook,
.smile-footer-social .social-facebook {
    background: #1877f2 !important;
    color: #fff !important;
}

.smile-social .social-twitter,
.smile-footer-social .social-twitter {
    background: #1da1f2 !important;
    color: #fff !important;
}

.smile-social .social-instagram,
.smile-footer-social .social-instagram {
    background: linear-gradient(135deg, #f58529 0%, #dd2a7b 45%, #8134af 72%, #515bd4 100%) !important;
    color: #fff !important;
}

.smile-social .social-youtube,
.smile-footer-social .social-youtube {
    background: #ff0000 !important;
    color: #fff !important;
}

.smile-social a:hover,
.smile-footer-social a:hover {
    filter: brightness(1.08);
}

.smile-scholarship-alert {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 4px;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
    animation: smileScholarshipBlink 1.05s ease-in-out infinite;
}

@keyframes smileScholarshipBlink {
    0%, 100% {
        background: #ff0036;
        box-shadow: 0 8px 20px rgba(255,0,54,.28);
    }

    50% {
        background: #d5002b;
        box-shadow: 0 8px 28px rgba(255,196,0,.35);
    }
}

.smile-navbar {
    position: fixed;
    top: 50px;
    left: 0;
    right: 0;
    z-index: 50;
    background: #fff;
    box-shadow: 0 10px 28px rgba(6,29,63,.07);
}

.smile-navbar-inner {
    min-height: 96px;
    justify-content: space-between;
    gap: 28px;
}

.smile-brand {
    display: flex;
    flex: 0 0 350px;
    align-items: center;
    justify-content: flex-start;
    gap: 18px;
    color: #082a5a;
    text-decoration: none;
    padding: 8px 0;
    text-align: left;
}

.smile-brand:hover,
.smile-brand:focus {
    color: #082a5a;
    text-decoration: none;
}

.smile-brand img {
    width: 88px;
    height: 76px;
    object-fit: contain;
}

.smile-brand-copy {
    position: relative;
    display: block;
    padding-left: 18px;
}

.smile-brand-copy::before {
    content: "";
    position: absolute;
    left: 0;
    top: 4px;
    bottom: 4px;
    width: 1px;
    background: #d7dde8;
}

.smile-brand-copy strong {
    display: block;
    color: #082a5a;
    font-size: 30px;
    line-height: .9;
    letter-spacing: 0;
    font-weight: 900;
}

.smile-brand-copy b {
    display: block;
    color: #082a5a;
    margin-top: 8px;
    font-size: 13px;
    line-height: 1;
    font-weight: 900;
    text-transform: uppercase;
}

.smile-brand-copy small {
    display: block;
    color: #09284c;
    margin-top: 8px;
    font-size: 11px;
    line-height: 1.1;
}

.smile-menu-toggle {
    display: none;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 6px;
    background: #05264f;
    color: #fff;
}

.smile-nav-links {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    padding-right: 18px;
    border-right: 1px solid #dfe5ef;
}

.smile-nav-links .ints-ul,
.smile-nav-links .ints-ul ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.smile-nav-links > .ints-ul {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.smile-nav-links .ints-ul li {
    position: relative;
}

.smile-nav-links .ints-ul a {
    position: relative;
    display: block;
    color: #082a5a;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
}

.smile-nav-links > .ints-ul > li > a.active-menu::after,
.smile-nav-links > .ints-ul > li > a:hover::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -14px;
    height: 2px;
    border-radius: 2px;
    background: #f2a900;
}

.smile-nav-links .ints-ul ul {
    position: absolute;
    left: 0;
    top: calc(100% + 18px);
    z-index: 80;
    min-width: 235px;
    padding: 10px 0;
    border-top: 3px solid #ffc400;
    border-radius: 0 0 8px 8px;
    background: #05264f;
    box-shadow: 0 18px 36px rgba(5,38,79,.2);
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.smile-enquire-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 44px;
    padding: 0 19px;
    border-radius: 6px;
    background: #052f68;
    color: #fff;
    font-size: 13px;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 10px 22px rgba(5,47,104,.28);
}

.smile-enquire-btn i {
    color: #f2a900;
}

.smile-enquire-btn:hover,
.smile-enquire-btn:focus {
    color: #fff;
    background: #031f48;
    text-decoration: none;
}

.smile-nav-links .ints-ul li:hover > ul,
.smile-nav-links .ints-ul li:focus-within > ul {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.smile-nav-links .ints-ul ul ul {
    left: 100%;
    top: -10px;
}

.smile-nav-links .ints-ul ul a {
    padding: 11px 16px;
    color: #fff;
    font-size: 13px;
    white-space: normal;
}

.smile-nav-links .ints-ul ul a:hover,
.smile-nav-links .ints-ul ul a.active-menu {
    background: #083a78;
    color: #ffc400 !important;
}

.smile-nav-links .downmenuuk {
    margin-left: 4px;
    color: #f2a900;
    font-size: 10px;
}

.smile-hero {
    position: relative;
    overflow: hidden;
    background: #fff;
    margin-bottom: 0;
}

.smile-hero-grid {
    display: grid;
    grid-template-columns: minmax(390px, .86fr) minmax(560px, 1.14fr);
    gap: 38px;
    align-items: center;
    min-height: 585px;
    padding-top: 42px;
    padding-bottom: 52px;
}

.smile-hero-slide {
    position: relative;
    overflow: hidden;
    background: linear-gradient(90deg, #ffffff 0%, #ffffff 48%, #eef6ff 100%);
}

.smile-hero-slide::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 80% 42%, rgba(255,196,0,.18) 0%, rgba(255,196,0,0) 34%);
}

.smile-hero-slide .smile-container {
    position: relative;
    z-index: 1;
}

.smile-hero-image-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 0;
    background: #fff;
}

.smile-hero-image-slide::before,
.smile-hero-banner-slide::before {
    display: none;
}

.smile-hero-banner-slide {
    background: #fff;
}

.smile-hero-full-image {
    display: block;
    width: 100%;
    height: 620px;
    object-fit: cover;
    object-position: center center;
}

.smile-hero-banner-content {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    padding: 0 82px;
    background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.94) 30%, rgba(255,255,255,.62) 46%, rgba(255,255,255,0) 66%);
}

.smile-hero-banner-content .smile-container {
    width: 100%;
    max-width: 1320px;
}

.smile-hero-banner-content .smile-hero-copy {
    max-width: 720px;
    padding: 24px 0 34px;
}

.smile-hero-banner-content .smile-hero-copy h1 {
    max-width: 720px;
    margin-bottom: 18px;
    color: #f6b600;
    font-family: "Courgette", "Segoe Script", cursive;
    font-size: clamp(35px, 2.9vw, 54px);
    line-height: 1.12;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
    text-shadow: 0 3px 12px rgba(0,0,0,.28);
}

.smile-hero-banner-content .smile-hero-description,
.smile-hero-banner-content .smile-hero-description p,
.smile-hero-banner-content .smile-hero-copy p {
    max-width: 610px;
    margin-bottom: 28px;
}

.smile-hero-banner-content .smile-hero-actions {
    margin-bottom: 32px;
}

.smile-hero-banner-content .smile-hero-stats {
    max-width: 680px;
    margin-top: 0;
    gap: 24px;
}

.smile-hero-description,
.smile-hero-description p {
    max-width: 540px;
    margin: 0 0 26px;
    color: #061d3f;
    font-size: 18px;
    line-height: 1.7;
}

.smile-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.smile-hero-secondary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 18px;
    border-radius: 6px;
    background: #ffc400;
    color: #05264f;
    font-weight: 800;
    text-decoration: none;
}

.smile-hero-secondary:hover {
    color: #05264f;
}

.smile-dynamic-hero .carousel-control {
    width: 34px;
    opacity: 1;
    background: rgba(0,0,0,.35);
    background-image: none;
    text-shadow: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.smile-dynamic-hero .carousel-inner {
    position: relative;
    overflow: hidden;
}

.smile-dynamic-hero .carousel-inner > .item {
    display: block;
    position: absolute;
    inset: 0;
    z-index: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateX(46px);
    transition: opacity .7s ease, transform .7s ease, visibility .7s ease;
}

.smile-dynamic-hero .carousel-inner > .item.active {
    position: relative;
    z-index: 1;
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

.smile-dynamic-hero .carousel-inner > .item.smile-slide-out {
    transform: translateX(-46px);
}

.smile-hero-copy h1 {
    max-width: 620px;
    margin: 0 0 20px;
    color: #f6b600;
    font-family: "Courgette", "Segoe Script", cursive;
    font-size: clamp(35px, 2.9vw, 54px);
    line-height: 1.12;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: none;
    text-shadow: 0 3px 12px rgba(0,0,0,.28);
    word-break: normal;
    overflow-wrap: anywhere;
}

.smile-hero-copy h1 span {
    display: block;
    margin-top: 18px;
    color: #000;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif;
    font-size: clamp(32px, 3vw, 50px);
    line-height: 1.12;
    font-weight: 900;
    text-transform: uppercase;
    text-shadow: 0 3px 14px rgba(0,0,0,.35);
}

.smile-hero-copy p {
    max-width: 540px;
    margin: 0 0 26px;
    color: #061d3f;
    font-size: 18px;
    line-height: 1.7;
}

.smile-scholarship {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    min-height: 52px;
    padding: 0 24px;
    border-radius: 5px;
    background: #05264f;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 8px 18px rgba(5,38,79,.18);
}

.smile-scholarship strong,
.smile-scholarship:hover {
    color: #ffc400;
}

.smile-hero-stats {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
    max-width: 620px;
    margin-top: 30px;
}

.smile-hero-stats div {
    display: grid;
    grid-template-columns: 30px 1fr;
    align-items: center;
    gap: 8px;
}

.smile-hero-stats i {
    grid-row: span 2;
    color: #052f68;
    font-size: 28px;
}

.smile-hero-stats strong {
    color: #052f68;
    font-size: 25px;
    line-height: 1;
}

.smile-hero-stats span {
    color: #132c4d;
    font-size: 11px;
    line-height: 1.25;
}

.smile-dots {
    display: flex;
    gap: 9px;
    margin-top: 26px;
}

.smile-dots span {
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: #cfd7e5;
}

.smile-dots .active {
    background: #052f68;
}

.smile-dots.center {
    justify-content: center;
}

.smile-hero-visual {
    position: relative;
    align-self: center;
    justify-self: end;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 455px;
    min-height: 0;
    max-height: none;
    background: #e9f1f8;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 165px;
    border-right: 0;
    border-bottom: 9px solid #f7bf00;
    overflow: hidden;
    box-shadow: none;
}

.smile-hero-visual img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.smile-hero-steps {
    display: none;
}

.smile-hero-steps div {
    display: flex;
    align-items: center;
    gap: 17px;
    font-size: 20px;
    font-weight: 800;
}

.smile-hero-steps i {
    color: #ffc400;
    font-size: 34px;
}

.smile-slider-arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    border: 0;
    border-radius: 50%;
    background: rgba(0,0,0,.35);
    color: #fff;
    line-height: 1;
}

.smile-slider-left {
    left: 28px;
}

.smile-slider-right {
    right: 28px;
}

.smile-feature-band {
    position: relative;
    z-index: 3;
    margin-top: -34px;
    padding-top: 0;
    padding-bottom: 34px;
}

.smile-feature-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 22px;
}

.smile-feature-slider {
    display: block;
    position: relative;
    width: min(100% - 72px, 1800px);
    margin-left: auto;
    margin-right: auto;
    overflow: visible;
}

.smile-feature-slider .owl-stage {
    display: flex;
}

.smile-feature-slider .owl-item {
    display: flex;
}

.smile-feature-card {
    width: 100%;
    min-height: 285px;
    padding: 0 0 28px;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e4eaf2;
    border-radius: 10px;
    box-shadow: 0 14px 34px rgba(5,38,79,.12);
    transition: transform .22s ease, box-shadow .22s ease;
}

.smile-feature-card + .smile-feature-card {
    margin-left: 0;
}

.smile-feature-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 46px rgba(5,38,79,.18);
}

.smile-feature-image {
    position: relative;
    height: 152px;
    margin-bottom: 22px;
    overflow: hidden;
    background: #eef3fa;
}

.smile-feature-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(8,41,78,0) 45%, rgba(8,41,78,.18));
}

.smile-feature-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.smile-feature-card:hover .smile-feature-image img {
    transform: scale(1.06);
}

.smile-feature-icon {
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 13px;
    border-radius: 50%;
    color: #fff;
    font-size: 28px;
}

.smile-feature-card.yellow .smile-feature-icon,
.smile-feature-card.yellow a {
    background: #f8b800;
}

.smile-feature-card.pink .smile-feature-icon,
.smile-feature-card.pink a {
    background: #f00663;
}

.smile-feature-card.blue .smile-feature-icon,
.smile-feature-card.blue a {
    background: #083a78;
}

.smile-feature-card.teal .smile-feature-icon,
.smile-feature-card.teal a {
    background: #43c7cf;
}

.smile-feature-card h3 {
    margin: 0 28px 16px;
    color: #061d3f;
    font-size: 19px;
    line-height: 1.3;
    font-weight: 850;
}

.smile-feature-card ul {
    min-height: 118px;
    margin: 0 28px 18px;
    padding-left: 18px;
    color: #1e2f44;
    font-size: 14px;
    line-height: 1.75;
}

.smile-feature-card a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-left: 28px;
    padding: 10px 18px;
    border-radius: 5px;
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
}

.smile-feature-slider .owl-nav {
    margin: 0;
}

.smile-feature-slider .owl-nav button.owl-prev,
.smile-feature-slider .owl-nav button.owl-next {
    position: absolute;
    top: 50%;
    z-index: 20;
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    transform: translateY(-50%);
    border-radius: 50%;
    background: #05264f !important;
    color: #fff !important;
    font-size: 18px !important;
    box-shadow: 0 12px 24px rgba(5,38,79,.18);
}

.smile-feature-slider .owl-nav button.owl-prev {
    left: -24px;
}

.smile-feature-slider .owl-nav button.owl-next {
    right: -24px;
}

.smile-feature-slider .owl-nav button:hover {
    background: #f8b800 !important;
    color: #05264f !important;
}

.smile-feature-slider .owl-dots {
    margin-top: 14px;
    text-align: center;
}

.smile-feature-slider .owl-dots .owl-dot span {
    width: 9px;
    height: 9px;
    margin: 0 4px;
    background: #cbd6e5;
}

.smile-feature-slider .owl-dots .owl-dot.active span {
    width: 24px;
    background: #05264f;
}

.smile-about {
    padding: 46px 0 44px;
    background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
}

.smile-about-grid {
    display: grid;
    grid-template-columns: 1.1fr 1fr 1.15fr;
    gap: 42px;
    align-items: center;
}

.smile-about h2,
.smile-gallery-title h2,
.smile-testimonials h2 {
    margin: 0 0 18px;
    color: #052f68;
    font-size: 34px;
    font-weight: 850;
}

.smile-about h2 span {
    color: #052f68;
}

.smile-about-copy p {
    color: #213348;
    font-size: 16px;
    line-height: 1.85;
}

.smile-stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-top: 28px;
}

.smile-stats div {
    text-align: center;
}

.smile-stats i {
    display: block;
    margin-bottom: 8px;
    color: #052f68;
    font-size: 26px;
}

.smile-stats strong {
    display: block;
    color: #052f68;
    font-size: 27px;
}

.smile-stats span {
    color: #28394d;
    font-size: 12px;
    line-height: 1.35;
}

.smile-campus-photo {
    overflow: hidden;
    border-left: 0;
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(5,38,79,.14);
}

.smile-campus-photo img {
    width: 100%;
    height: 315px;
    object-fit: cover;
}

.smile-about-notes {
    display: grid;
    gap: 18px;
}

.smile-about-notes article {
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 14px;
    align-items: center;
    min-height: 132px;
    padding: 24px;
    border: 1px solid #e4eaf2;
    border-radius: 10px;
    background: #f9fbfe;
    box-shadow: 0 14px 34px rgba(5,38,79,.09);
    transition: transform .22s ease, box-shadow .22s ease;
}

.smile-about-notes article:hover {
    transform: translateY(-5px);
    box-shadow: 0 22px 48px rgba(5,38,79,.14);
}

.smile-about-notes i {
    color: #052f68;
    font-size: 34px;
}

.smile-about-notes p {
    margin: 0;
    color: #17293e;
    font-size: 14px;
    line-height: 1.7;
}

.smile-counter-band {
    position: relative;
    overflow: hidden;
    padding: 72px 0 64px;
    background: linear-gradient(rgba(13,111,99,.82), rgba(13,111,99,.82)), url("../img/counter/01.jpg") center/cover no-repeat;
}

.smile-counter-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 38px;
    align-items: center;
    text-align: center;
}

.smile-counter-grid article {
    color: #fff;
}

.smile-counter-icon {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 122px;
    height: 96px;
    margin: 0 auto 26px;
    border-radius: 42% 58% 52% 48%;
    background: #ffa51f;
    color: #fff;
    font-size: 42px;
}

.smile-counter-icon::after {
    content: "";
    position: absolute;
    right: -12px;
    bottom: -12px;
    width: 106px;
    height: 86px;
    border: 4px solid rgba(255,255,255,.9);
    border-left-color: transparent;
    border-top-color: transparent;
    border-radius: 50%;
}

.smile-counter-icon i {
    position: relative;
    z-index: 1;
}

.smile-counter-grid strong {
    display: block;
    margin-bottom: 10px;
    color: #fff;
    font-size: 56px;
    line-height: 1;
    font-weight: 900;
}

.smile-counter-grid span {
    display: block;
    color: #fff;
    font-size: 22px;
    font-weight: 800;
}

.smile-info-row {
    padding: 36px 0 42px;
    background: #fff;
}

.smile-info-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(340px, 1fr);
    gap: 28px;
}

.smile-tour-card,
.smile-news-card,
.smile-app-card,
.smile-testimonial-grid article {
    border-radius: 10px;
    box-shadow: 0 18px 42px rgba(5,38,79,.13);
    transition: transform .22s ease, box-shadow .22s ease;
}

.smile-tour-card:hover,
.smile-news-card:hover,
.smile-app-card:hover,
.smile-testimonial-grid article:hover {
    transform: translateY(-6px);
    box-shadow: 0 26px 58px rgba(5,38,79,.18);
}

.smile-tour-card {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 26px;
    padding: 32px;
    background: linear-gradient(135deg, #05264f 0%, #073b79 100%);
    color: #fff;
}

.smile-tour-card span {
    color: #ffc400;
    font-size: 14px;
    font-weight: 800;
}

.smile-tour-card h2 {
    margin: 18px 0;
    color: #fff;
    font-size: 34px;
    line-height: 1.2;
}

.smile-tour-card p {
    color: #fff;
    font-size: 16px;
}

.smile-tour-card a {
    display: inline-flex;
    gap: 7px;
    align-items: center;
    padding: 12px 18px;
    border-radius: 5px;
    background: #ffc400;
    color: #05264f;
    font-size: 13px;
    font-weight: 850;
    text-decoration: none;
}

.smile-video-thumb {
    position: relative;
    overflow: hidden;
    border: 4px solid #fff;
    border-radius: 10px;
}

.smile-video-thumb img {
    width: 100%;
    height: 100%;
    min-height: 230px;
    object-fit: cover;
}

.smile-video-thumb button {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 68px;
    height: 68px;
    transform: translate(-50%, -50%);
    border: 0;
    border-radius: 50%;
    background: #fff;
    color: #05264f;
    font-size: 24px;
}

.smile-news-card,
.smile-app-card {
    padding: 24px;
    background: #fff;
    border: 1px solid #e7edf4;
}

.smile-news-card h3 {
    margin: 0 0 16px;
    color: #052f68;
    font-size: 21px;
}

.smile-news-item {
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 18px;
    padding: 18px 0;
    border-top: 1px solid #e7edf4;
}

.smile-news-item time {
    display: grid;
    place-items: center;
    min-height: 68px;
    border-radius: 5px;
    background: #052f68;
    color: #fff;
    text-align: center;
}

.smile-news-item time strong {
    font-size: 28px;
    line-height: 1;
}

.smile-news-item time span {
    font-size: 10px;
    line-height: 1.15;
}

.smile-news-item small {
    color: #f00663;
    font-size: 11px;
}

.smile-news-item h4 {
    margin: 5px 0;
    color: #061d3f;
    font-size: 16px;
}

.smile-news-item p,
.smile-news-item a {
    margin: 0;
    font-size: 13px;
}

.smile-news-item a {
    color: #052f68;
    font-weight: 800;
}

.smile-news-empty {
    margin: 18px 0 0;
    padding-top: 18px;
    border-top: 1px solid #e7edf4;
    color: #607086;
    font-size: 14px;
}

.smile-app-card {
    grid-column: 1 / -1;
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: 170px minmax(0, 1fr) auto;
    gap: 34px;
    align-items: center;
    min-height: 245px;
    padding: 30px 36px;
    background: linear-gradient(135deg, #05264f 0%, #073b79 58%, #0f928a 100%);
    border-color: rgba(255,255,255,.12);
    color: #fff;
}

.smile-app-card::before {
    content: "";
    position: absolute;
    right: 24%;
    top: -90px;
    width: 250px;
    height: 250px;
    border: 38px solid rgba(255,255,255,.08);
    border-radius: 50%;
}

.smile-app-card::after {
    content: "";
    position: absolute;
    right: -55px;
    bottom: -80px;
    width: 210px;
    height: 210px;
    border-radius: 50%;
    background: rgba(255,196,0,.2);
}

.smile-app-phone,
.smile-app-copy,
.smile-app-action {
    position: relative;
    z-index: 1;
}

.smile-app-phone {
    display: grid;
    place-items: center;
    min-height: 180px;
    border-radius: 8px;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.22);
}

.smile-app-phone img {
    width: 125px;
    max-height: 205px;
    object-fit: contain;
    filter: drop-shadow(0 20px 24px rgba(0,0,0,.22));
}

.smile-app-copy > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: #ffc400;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
}

.smile-app-card h3 {
    max-width: 620px;
    margin: 0 0 10px;
    color: #fff;
    font-size: 30px;
    line-height: 1.18;
    font-weight: 900;
}

.smile-app-card p {
    max-width: 640px;
    margin: 0 0 18px;
    color: rgba(255,255,255,.84);
    font-size: 15px;
    line-height: 1.65;
}

.smile-app-card ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
    color: #fff;
    font-size: 13px;
}

.smile-app-card li {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 5px;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.16);
    font-weight: 800;
}

.smile-app-card li::before {
    content: "\2713";
    color: #ffc400;
    font-weight: 900;
}

.smile-app-action {
    display: flex;
    justify-content: flex-end;
}

.smile-play-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 0 20px;
    border-radius: 6px;
    background: #050505;
    color: #fff;
    font-size: 14px;
    font-weight: 850;
    white-space: nowrap;
    box-shadow: 0 14px 24px rgba(0,0,0,.2);
}

.smile-teachers {
    padding: 66px 0 72px;
    background: #fff;
}

.smile-staff-page {
    padding-top: 78px;
    background: linear-gradient(180deg, #fff 0%, #f8fbff 100%);
}

.smile-section-heading {
    max-width: 760px;
    margin: 0 auto 52px;
    text-align: center;
}

.smile-section-heading span {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
    padding-bottom: 5px;
    border-bottom: 2px solid #ff9f1c;
    color: #ff9f1c;
    font-size: 19px;
    font-weight: 800;
    letter-spacing: 8px;
    text-transform: uppercase;
}

.smile-section-heading h2 {
    margin: 0 0 20px;
    color: #17212c;
    font-size: clamp(36px, 4.4vw, 62px);
    line-height: 1.08;
    font-weight: 900;
}

.smile-section-heading h2 strong {
    color: #ff9f1c;
    font-weight: 900;
}

.smile-section-heading p {
    margin: 0 auto;
    max-width: 650px;
    color: #687588;
    font-size: 19px;
    line-height: 1.75;
}

.smile-teacher-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 30px;
}

.smile-teacher-card {
    overflow: hidden;
    border-radius: 54px 54px 8px 8px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(23,33,44,.1);
    transition: transform .22s ease, box-shadow .22s ease;
}

.smile-teacher-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 28px 60px rgba(23,33,44,.16);
}

.smile-teacher-card img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1.12;
    object-fit: cover;
    border-radius: 46px 46px 0 0;
}

.smile-teacher-card div {
    padding: 22px 18px 24px;
    text-align: center;
}

.smile-teacher-card h3 {
    margin: 0 0 7px;
    color: #10264a;
    font-size: 21px;
    font-weight: 850;
}

.smile-teacher-card p {
    margin: 0 0 6px;
    color: #ff9f1c;
    font-size: 15px;
    font-weight: 800;
}

.smile-teacher-card span {
    display: block;
    color: #687588;
    font-size: 14px;
    line-height: 1.5;
}

.smile-teacher-more {
    margin-top: 36px;
    text-align: center;
}

.smile-teacher-more a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 48px;
    padding: 0 24px;
    border-radius: 6px;
    background: #052f68;
    color: #fff;
    font-weight: 800;
    text-decoration: none;
}

.smile-teacher-more a:hover {
    background: #ff9f1c;
    color: #052f68;
}

.smile-staff-tabs {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    margin: -22px 0 38px;
}

.smile-staff-tabs button {
    min-height: 44px;
    padding: 0 22px;
    border: 1px solid #ff9f1c;
    border-radius: 6px;
    background: #fff;
    color: #10264a;
    font-weight: 800;
}

.smile-staff-tabs button.active,
.smile-staff-tabs button:hover {
    background: #ff9f1c;
    color: #fff;
}

.smile-staff-grid {
    display: none;
}

.smile-staff-grid.active {
    display: grid;
}

.smile-staff-empty {
    grid-column: 1 / -1;
    padding: 38px;
    border-radius: 8px;
    background: #fff;
    color: #687588;
    text-align: center;
    box-shadow: 0 14px 34px rgba(23,33,44,.08);
}

.smile-gallery-strip {
    padding: 56px 0 62px;
    background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
}

.smile-gallery-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 26px;
}

.smile-gallery-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.smile-gallery-title h2 {
    margin-bottom: 0;
}

.smile-gallery-title a {
    display: inline-flex;
    gap: 7px;
    align-items: center;
    min-height: 46px;
    padding: 0 20px;
    border-radius: 6px;
    background: #052f68;
    color: #fff;
    font-size: 13px;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 12px 24px rgba(5,47,104,.16);
}

.smile-gallery-title a:hover {
    background: #ff9f1c;
    color: #052f68;
}

.smile-gallery-slider {
    position: relative;
    min-width: 0;
    padding: 0;
}

.smile-gallery-window {
    overflow: visible;
    padding: 8px 0 18px;
}

.smile-gallery-track {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.smile-gallery-grid figure {
    position: relative;
    margin: 0;
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 16px 35px rgba(5,38,79,.13);
    transition: transform .22s ease, box-shadow .22s ease;
}

.smile-gallery-arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    border: 0;
    border-radius: 50%;
    background: #052f68;
    color: #fff;
    box-shadow: 0 10px 22px rgba(5,47,104,.18);
}

.smile-gallery-prev {
    left: 0;
}

.smile-gallery-next {
    right: 0;
}

.smile-gallery-arrow:hover {
    background: #ffc400;
    color: #052f68;
}

.smile-gallery-grid figure:hover {
    transform: translateY(-6px);
    box-shadow: 0 24px 52px rgba(5,38,79,.18);
}

.smile-gallery-grid img {
    width: 100%;
    height: 230px;
    object-fit: cover;
}

.smile-gallery-grid figcaption {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    min-width: 86px;
    padding: 9px 18px;
    border-radius: 6px 6px 0 0;
    background: #f47b00;
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    text-align: center;
}

.smile-gallery-grid figure:nth-child(4) figcaption {
    background: #25b6ba;
}

.smile-gallery-grid figure:nth-child(5) figcaption {
    background: #715bff;
}

.smile-testimonials {
    padding: 46px 0 64px;
    background: radial-gradient(circle at top, #ffffff 0%, #f1f6fc 72%);
    text-align: center;
}

.smile-eyebrow {
    margin: 0;
    color: #061d3f;
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
}

.smile-testimonials h2 {
    position: relative;
    display: inline-block;
}

.smile-testimonial-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
    max-width: 860px;
    margin: 0 auto;
}

.smile-review-slider {
    position: relative;
    max-width: 960px;
    margin: 0 auto;
    padding: 0 54px;
}

.smile-review-window {
    overflow: hidden;
    padding: 4px 0 16px;
}

.smile-review-slider .smile-testimonial-grid {
    display: flex;
    max-width: none;
    gap: 0;
    transition: transform .45s ease;
    will-change: transform;
}

.smile-review-slider .smile-testimonial-grid article {
    flex: 0 0 calc(50% - 14px);
    margin-right: 28px;
}

.smile-review-arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
    border: 0;
    border-radius: 50%;
    background: #052f68;
    color: #fff;
    box-shadow: 0 10px 22px rgba(5,47,104,.18);
}

.smile-review-prev {
    left: 0;
}

.smile-review-next {
    right: 0;
}

.smile-review-arrow:hover {
    background: #ffc400;
    color: #052f68;
}

.smile-testimonial-grid article {
    position: relative;
    min-height: 135px;
    padding: 28px 32px 26px 112px;
    background: #fff;
    text-align: left;
}

.smile-testimonial-grid article > i {
    position: absolute;
    left: 22px;
    top: 18px;
    color: #052f68;
    font-size: 28px;
}

.smile-testimonial-grid img {
    position: absolute;
    left: 48px;
    top: 35px;
    width: 45px;
    height: 45px;
    border-radius: 50%;
    object-fit: cover;
}

.smile-testimonial-grid h4 {
    margin: 0 0 12px;
    color: #052f68;
    font-size: 16px;
    font-weight: 850;
}

.smile-testimonial-grid h4 span {
    color: #ffc400;
    margin-left: 8px;
}

.smile-testimonial-grid h4 span i {
    position: static;
    margin-right: 2px;
    color: #ffc400;
    font-size: 13px;
}

.smile-testimonial-grid p {
    margin: 0;
    color: #23364b;
    font-size: 14px;
    line-height: 1.75;
}

.smile-helpbar {
    background: #ffc400;
    color: #071d38;
}

.smile-helpbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 64px;
    gap: 22px;
    font-weight: 850;
}

.smile-helpbar a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 32px;
    border-radius: 6px;
    background: #fff;
    color: #071d38;
    text-decoration: none;
}

.smile-about-page {
    background: #fff;
}

.smile-about-page .container {
    max-width: 1180px;
}

.smile-about-quote {
    position: relative;
    margin: 0 0 34px;
    padding: 20px 34px;
    border-left: 3px solid #18bdd2;
    border-bottom: 1px solid #18bdd2;
    background: linear-gradient(90deg, #f9fdff 0%, #fff 100%);
    color: #30445c;
}

.smile-about-quote i {
    position: absolute;
    color: #061d3f;
    font-size: 20px;
}

.smile-about-quote .fa-quote-left {
    left: -4px;
    top: -8px;
}

.smile-about-quote .fa-quote-right {
    right: -4px;
    bottom: -11px;
}

.smile-about-quote p {
    margin: 0;
    color: #30445c;
    font-size: 15px;
    line-height: 1.8;
}

.smile-about-quote strong {
    display: block;
    margin-top: 8px;
    color: #061d3f;
    font-size: 12px;
    text-align: right;
}

.smile-about-static-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
    gap: 46px;
    align-items: center;
    margin-bottom: 36px;
}

.smile-about-label {
    display: inline-block;
    margin-bottom: 11px;
    color: #00a4bd;
    font-size: 15px;
    font-weight: 850;
}

.smile-about-static-copy h1 {
    margin: 0 0 16px;
    padding-bottom: 13px;
    border-bottom: 1px dashed #00a4bd;
    color: #052f68;
    font-size: 30px;
    line-height: 1.25;
    font-weight: 900;
}

.smile-about-static-copy p,
.smile-about-foundation p {
    margin: 0 0 15px;
    color: #435773;
    font-size: 16px;
    line-height: 1.8;
    text-align: justify;
}

.smile-about-static-image {
    margin: 0;
    overflow: hidden;
    border-radius: 8px;
    background: #eef4fb;
    box-shadow: 0 18px 44px rgba(5,38,79,.14);
}

.smile-about-static-image img {
    display: block;
    width: 100%;
    height: 315px;
    object-fit: cover;
}

.smile-about-foundation,
.smile-about-features {
    margin-bottom: 30px;
}

.smile-about-foundation .smile-about-label,
.smile-about-features .smile-about-label {
    display: block;
    padding-bottom: 9px;
    border-bottom: 1px dashed #00a4bd;
}

.smile-about-features ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 26px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.smile-about-features li {
    position: relative;
    padding-left: 22px;
    color: #273c55;
    font-size: 15px;
    line-height: 1.55;
}

.smile-about-features li::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 8px;
    width: 8px;
    height: 8px;
    border-radius: 2px;
    background: #6fc500;
    transform: rotate(45deg);
}

.smile-about-quote-bottom {
    margin-top: 34px;
    margin-bottom: 0;
}

.smile-footer {
    background: #05264f;
    color: rgba(255,255,255,.86);
}

.smile-footer-grid {
    display: grid;
    grid-template-columns: 1.4fr repeat(4, 1fr);
    gap: 42px;
    padding: 66px 0 44px;
}

.smile-footer h3,
.smile-footer h4 {
    color: #fff;
}

.smile-footer h4 {
    margin: 0 0 18px;
    font-size: 16px;
    text-transform: uppercase;
}

.smile-footer a,
.smile-footer p {
    display: block;
    margin: 0 0 8px;
    color: rgba(255,255,255,.84);
    font-size: 14px;
    line-height: 1.65;
    text-decoration: none;
}

.smile-footer-grid > div:not(.smile-footer-brand) a,
.smile-footer-grid > div:not(.smile-footer-brand) p {
    display: flex;
    align-items: flex-start;
    gap: 9px;
}

.smile-footer-grid > div:not(.smile-footer-brand) a i,
.smile-footer-grid > div:not(.smile-footer-brand) p i {
    flex: 0 0 16px;
    margin-top: 5px;
    color: #f5c842;
    font-size: 13px;
    text-align: center;
}

.smile-footer-brand img {
    width: 122px;
    height: 82px;
    object-fit: contain;
}

.smile-footer-brand h3 {
    margin: -4px 0 2px;
    font-family: Georgia, serif;
    font-size: 26px;
}

.smile-footer-social {
    display: flex;
    gap: 9px;
    margin-top: 16px;
}

.smile-footer-social a {
    width: 29px;
    height: 29px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    color: #05264f;
}

.smile-copyright {
    padding: 14px 17px 18px;
    border-top: 1px solid rgba(255,255,255,.09);
    color: rgba(255,255,255,.74);
    font-size: 13px;
    text-align: center;
}

@media (max-width: 1100px) {
    .smile-body {
        padding-top: 170px;
    }

    .smile-topbar {
        font-size: 12px;
    }

    .smile-topbar-inner {
        min-height: 86px;
        align-content: center;
        flex-wrap: wrap;
        gap: 12px;
        padding: 8px 16px;
    }

    .smile-contact-strip {
        flex: 1 1 auto;
        flex-wrap: wrap;
        gap: 16px;
    }

    .smile-contact-strip a:nth-child(n+3):not(.smile-scholarship-alert),
    .smile-social {
        display: none;
    }

    .smile-scholarship-alert {
        display: flex;
        flex: 1 0 100%;
        align-items: center;
        justify-content: center;
        min-height: 36px;
        padding: 0 18px;
        border-radius: 5px;
        color: #fff;
        font-size: 17px;
        font-weight: 900;
        line-height: 1.25;
        text-align: center;
        text-decoration: none;
        animation: smileScholarshipBlink 1.05s ease-in-out infinite;
    }

    .smile-navbar {
        top: 86px;
    }

    .smile-navbar-inner {
        min-height: 84px;
        gap: 14px;
        padding-left: 16px;
        padding-right: 16px;
    }

    .smile-brand {
        flex: 1 1 auto;
        min-width: 0;
        gap: 12px;
    }

    .smile-brand img {
        width: 74px;
        height: 64px;
    }

    .smile-brand-copy {
        padding-left: 13px;
    }

    .smile-brand-copy strong {
        font-size: 26px;
    }

    .smile-brand-copy b {
        margin-top: 6px;
        font-size: 12px;
    }

    .smile-brand-copy small {
        margin-top: 6px;
        font-size: 10px;
    }

    .smile-nav-links > .ints-ul {
        gap: 13px;
    }

    .smile-nav-links .ints-ul a {
        font-size: 12px;
    }

    .smile-menu-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .smile-nav-links {
        position: absolute;
        left: 0;
        right: 0;
        top: 84px;
        display: none;
        max-height: calc(100vh - 170px);
        overflow-y: auto;
        padding: 10px 18px 18px;
        border-right: 0;
        background: #fff;
        box-shadow: 0 18px 30px rgba(5,38,79,.12);
    }

    .smile-nav-links.is-open {
        display: block;
    }

    .smile-nav-links > .ints-ul {
        display: block;
    }

    .smile-nav-links .ints-ul a {
        padding: 12px 0;
        border-bottom: 1px solid #edf1f6;
        color: #061d3f;
        white-space: normal;
    }

    .smile-nav-links > .ints-ul > li > a.active-menu::after,
    .smile-nav-links > .ints-ul > li > a:hover::after {
        display: none;
    }

    .smile-nav-links .ints-ul ul,
    .smile-nav-links .ints-ul ul ul {
        position: static;
        min-width: 0;
        display: none;
        padding: 0 0 0 16px;
        border-top: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .smile-nav-links .has-submenu.is-submenu-open > ul {
        display: block;
    }

    .smile-nav-links .submenu-toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
    }

    .smile-nav-links .has-submenu.is-submenu-open > .submenu-toggle > i {
        transform: rotate(180deg);
    }

    .smile-nav-links .ints-ul ul a {
        color: #31445a;
        font-size: 12px;
    }

    .smile-feature-grid,
    .smile-info-grid,
    .smile-teacher-grid,
    .smile-counter-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .smile-app-card {
        grid-column: span 2;
    }

    .smile-gallery-grid {
        grid-template-columns: 1fr;
    }

    .smile-gallery-title {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
    }

    .smile-gallery-grid figure {
        flex-basis: auto;
    }

    .smile-gallery-track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .smile-enquire-btn {
        display: none;
    }
}

@media (max-width: 860px) {
    .smile-hero-copy p {
       
        
        font-size: 14px;
        line-height: 20px;
    }
    .smile-body {
        padding-top: 160px;
    }

    .smile-topbar-inner {
        align-items: center;
        flex-direction: row;
        padding: 0;
    }

    .smile-helpbar {
        padding: 10px 0;
    }

    .smile-helpbar-inner {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
        min-height: 0;
        padding: 0 12px;
    }

    .smile-helpbar-inner span {
        grid-column: 1 / -1;
        text-align: center;
        font-size: 14px;
        line-height: 1.35;
    }

    .smile-helpbar a {
        justify-content: center;
        min-width: 0;
        padding: 10px 8px;
        font-size: 13px;
        line-height: 1.25;
        text-align: center;
        overflow-wrap: anywhere;
    }

    .smile-topbar-inner {
        min-height: 84px;
        align-content: center;
        flex-wrap: wrap;
        justify-content: center;
        padding: 8px 14px;
    }

    .smile-contact-strip {
        justify-content: center;
        gap: 12px;
    }

    .smile-contact-strip a {
        font-size: 11px;
    }

    .smile-contact-strip a:nth-child(n+2):not(.smile-scholarship-alert) {
        display: none;
    }

    .smile-contact-strip .smile-scholarship-alert {
        display: flex;
        flex: 0 1 auto;
        width: auto;
        max-width: calc(100vw - 36px);
    }

    .smile-navbar {
        top: 84px;
    }

    .smile-navbar-inner {
        min-height: 76px;
        gap: 10px;
    }

    .smile-menu-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .smile-nav-links {
        position: absolute;
        left: 0;
        right: 0;
        top: 76px;
        display: none;
        max-height: calc(100vh - 160px);
        padding: 10px 18px 18px;
        border-right: 0;
        background: #fff;
        box-shadow: 0 18px 30px rgba(5,38,79,.12);
    }

    .smile-nav-links.is-open {
        display: block;
    }

    .smile-nav-links > .ints-ul {
        display: block;
    }

    .smile-nav-links .ints-ul a {
        padding: 12px 0;
        border-bottom: 1px solid #edf1f6;
        color: #061d3f;
        white-space: normal;
    }

    .smile-nav-links > .ints-ul > li > a.active-menu::after,
    .smile-nav-links > .ints-ul > li > a:hover::after {
        display: none;
    }

    .smile-nav-links .ints-ul ul,
    .smile-nav-links .ints-ul ul ul {
        position: static;
        min-width: 0;
        display: none;
        padding: 0 0 0 16px;
        border-top: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        transform: none;
    }

    .smile-nav-links .has-submenu.is-submenu-open > ul {
        display: block;
    }

    .smile-nav-links .submenu-toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
    }

    .smile-nav-links .has-submenu.is-submenu-open > .submenu-toggle > i {
        transform: rotate(180deg);
    }

    .smile-nav-links .ints-ul ul a {
        color: #31445a;
        font-size: 12px;
    }

    .smile-hero {
        background: #fff;
    }

    .smile-dynamic-hero,
    .smile-dynamic-hero .carousel,
    .smile-dynamic-hero .carousel-inner,
    .smile-dynamic-hero .carousel-inner > .item,
    .smile-hero-slide {
        line-height: 0;
    }

    .smile-dynamic-hero .smile-hero-full-image {
        height: 330px;
        object-fit: cover;
        object-position: center center;
    }

    .smile-hero-grid {
        grid-template-columns: 1fr;
        gap: 24px;
        padding-top: 0;
        min-height: auto;
    }

    .smile-hero-copy {
        padding-bottom: 22px;
    }

    .smile-hero-banner-content {
        position: static;
        padding: 0 22px;
        background: #fff;
    }

    .smile-hero-banner-content .smile-hero-copy {
        max-width: none;
        padding: 16px 0 20px;
    }

    .smile-hero-banner-content .smile-hero-copy h1 {
        font-size: 34px;
        line-height: 1.08;
    }

    .smile-hero-banner-content .smile-hero-copy h1 span {
        margin-top: 12px;
        font-size: 25px;
        line-height: 1.16;
    }

    .smile-hero-visual {
        border-radius: 24px;
        border-right: 0;
        border-bottom: 8px solid #f7bf00;
        height: auto;
        min-height: 320px;
    }

    .smile-hero-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .smile-hero-steps {
        display: none;
    }

    .smile-about-grid,
    .smile-about-static-grid,
    .smile-info-grid,
    .smile-counter-grid,
    .smile-footer-grid {
        grid-template-columns: 1fr;
    }

    .smile-about-static-grid {
        gap: 24px;
    }

    .smile-about-static-image {
        order: -1;
    }

    .smile-about-features ul {
        grid-template-columns: 1fr;
    }

    .smile-counter-band {
        padding: 54px 0 48px;
    }

    .smile-review-slider .smile-testimonial-grid article {
        flex-basis: 100%;
        margin-right: 0;
    }

    .smile-app-card {
        grid-column: auto;
        grid-template-columns: 135px minmax(0, 1fr);
    }

    .smile-app-action {
        grid-column: 2;
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .smile-body {
        padding-top: 120px;
    }

    .smile-topbar-inner {
        min-height: 50px;
        padding: 0 14px;
    }

    .smile-contact-strip a:not(.smile-scholarship-alert) {
        display: none;
    }

    .smile-contact-strip {
        width: 100%;
        justify-content: center;
    }

    .smile-navbar {
        top: 50px;
    }

    .smile-navbar-inner {
        min-height: 70px;
        padding-left: 12px;
        padding-right: 12px;
    }

    .smile-nav-links {
        top: 70px;
        max-height: calc(100vh - 120px);
    }

    .smile-helpbar-inner {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .smile-helpbar a {
        font-size: 12px;
    }

    .smile-scholarship-alert {
        flex: 0 1 auto;
        width: auto;
        max-width: calc(100vw - 36px);
        min-height: 34px;
        padding: 0 13px;
        border-radius: 5px;
        font-size: 13px;
    }

    .smile-about-quote {
        margin-bottom: 24px;
        padding: 18px 20px;
    }

    .smile-about-static-copy h1 {
        font-size: 24px;
    }

    .smile-about-static-copy p,
    .smile-about-foundation p {
        font-size: 15px;
        line-height: 1.7;
        text-align: left;
    }

    .smile-about-static-image img {
        height: 240px;
    }

    .smile-dynamic-hero .smile-hero-full-image {
        height: 245px;
    }

    .smile-brand img {
        width: 58px;
        height: 54px;
    }

    .smile-brand {
        flex-basis: auto;
        gap: 8px;
    }

    .smile-brand-copy {
        padding-left: 10px;
    }

    .smile-brand-copy strong {
        font-size: 21px;
    }

    .smile-brand-copy b {
        margin-top: 4px;
        font-size: 10px;
    }

    .smile-brand-copy small {
        display: none;
    }

    .smile-menu-toggle {
        width: 38px;
        height: 38px;
    }

    .smile-feature-grid,
    .smile-stats,
    .smile-tour-card,
    .smile-app-card {
        grid-template-columns: 1fr;
    }

    .smile-feature-slider {
        width: calc(100% - 24px);
    }

    .smile-feature-slider .owl-nav button.owl-prev {
        left: 8px;
    }

    .smile-feature-slider .owl-nav button.owl-next {
        right: 8px;
    }

    .smile-app-card {
        padding: 26px 22px;
        text-align: center;
    }

    .smile-app-phone {
        min-height: 160px;
    }

    .smile-app-card h3 {
        font-size: 25px;
    }

    .smile-app-card ul {
        justify-content: center;
    }

    .smile-app-action {
        grid-column: auto;
        justify-content: center;
    }

    .smile-feature-card + .smile-feature-card {
        margin-left: 0;
        margin-top: 14px;
    }

    .smile-hero-copy h1 {
        font-size: 34px;
    }

    .smile-hero-copy h1 span {
        margin-top: 12px;
        font-size: 25px;
    }

    .smile-hero-stats {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .smile-hero-steps {
        display: none;
    }

    .smile-slider-arrow {
        display: none;
    }

    .smile-testimonial-grid article {
        padding-left: 26px;
    }

    .smile-review-slider {
        padding: 0 42px;
    }

    .smile-gallery-slider {
        padding: 0;
    }

    .smile-gallery-grid figure {
        flex-basis: auto;
    }

    .smile-gallery-track {
        grid-template-columns: 1fr;
    }

    .smile-gallery-grid img {
        height: 210px;
    }

    .smile-teacher-grid {
        grid-template-columns: 1fr;
    }

    .smile-section-heading {
        margin-bottom: 34px;
    }

    .smile-section-heading span {
        font-size: 14px;
        letter-spacing: 4px;
    }

    .smile-section-heading h2 {
        font-size: 34px;
    }

    .smile-gallery-title {
        align-items: flex-start;
        flex-direction: column;
    }

    .smile-gallery-title a {
        width: 100%;
        justify-content: center;
    }

    .smile-testimonial-grid article > i,
    .smile-testimonial-grid img {
        position: static;
        display: inline-block;
        margin: 0 10px 12px 0;
        vertical-align: middle;
    }
}

::selection {
    color: #fff;
    background: var(--site-primary);
}

.school-utility-bar,
.headerkk {
    background: linear-gradient(110deg, #4058bd 0%, #2870a6 45%, #148c86 72%, #078d4a 100%);
}

.school-brand-panel {
    background: #fff;
    color: #08294e;
    cursor: pointer;
    text-decoration: none;
}

    .school-brand-panel:hover,
    .school-brand-panel:focus {
        color: #08294e;
        text-decoration: none;
    }

.school-registration-btn,
.theme-btn,
.btn-success {
    color: #fff;
    border-color: var(--site-accent);
    background: linear-gradient(135deg, #ffb52c, #f5960b);
}

    .school-registration-btn:hover,
    .school-registration-btn:focus,
    .theme-btn:hover,
    .btn-success:hover,
    .btn-success:focus {
        color: #fff;
        border-color: var(--site-accent-dark);
        background: var(--site-accent-dark);
    }

.menubar nav > ul > li > a:hover,
.menubar nav > ul > li > a.active-menu,
.home-staff-tab.active,
.home-staff-tab:hover,
.staff-tab.active {
    color: #fff !important;
    background: #08294e !important;
}

.menubar nav > ul ul {
    border-top-color: var(--site-accent);
    background: var(--site-primary);
}

    .menubar nav > ul ul li a:hover,
    .menubar nav > ul ul li > a.active-menu {
        background: var(--site-primary-dark) !important;
    }

.aboutus-page-bg,
.theading,
.rmain22 {
    background-color: var(--site-primary);
}

.site-title-tagline,
.site-title span,
.bookicnn,
.course-meta-left i,
.course-rating,
.home-staff-arrow,
.biodataaaa {
    color: var(--site-accent);
}

.home-staff-tab,
.staff-tab,
.home-staff-arrow {
    border-color: var(--site-accent);
}

    .home-staff-arrow:hover {
        color: #fff;
        background: var(--site-accent);
    }

.bg-success,
.text-bg-success {
    background-color: var(--site-primary) !important;
}

.text-success {
    color: var(--site-primary) !important;
}

.border-success {
    border-color: var(--site-primary) !important;
}

.footer-area {
    background: linear-gradient(135deg, #071d58 0%, #102c84 65%, #1733b5 100%);
}

.footer-logo {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    font-size: 25px;
    font-weight: 800;
}

    .footer-logo img {
        width: 85px;
        height: 85px;
        border-radius: 50%;
        padding: 9px;
        background: #fff;
    }

    .footer-logo:hover,
    .footer-logo:focus {
        color: var(--site-accent);
    }

a:hover {
    color: var(--site-accent-dark);
}

.home-dynamic-content,
.home-dynamic-content p {
    color: inherit;
    font: inherit;
    line-height: inherit;
}

    .home-dynamic-content > :last-child {
        margin-bottom: 0;
    }

@media (max-width: 1023px) {
    .school-brand-panel {
        background: #fff;
    }
}

/* Home leadership messages */
.leadership-message {
    margin: 0;
    padding: 0 15px;
    background: #062958;
    border: 0;
}

    .leadership-message .container {
        position: relative;
        max-width: 1320px;
        padding: 34px 38px;
        overflow: hidden;
        background: linear-gradient(135deg, rgba(255,255,255,.98), rgba(241,246,252,.98));
        border-right: 1px solid #0b315f;
        border-left: 1px solid #0b315f;
        border-bottom: 3px solid #0b315f;
    }

    .leadership-message .row {
        display: grid;
        grid-template-columns: 285px minmax(0, 1fr);
        grid-auto-flow: row;
        gap: 0 36px;
        margin: 0;
    }

        .leadership-message .row > [class*="col-"] {
            width: auto;
            padding: 0;
            float: none;
        }

        .leadership-message .row > .col-lg-3 {
            grid-column: 1;
            grid-row: 1 / span 2;
            align-self: start;
        }

        .leadership-message .row > .col-lg-9,
        .leadership-message .row > .col-lg-12 {
            grid-column: 2;
        }

    .leadership-message .princbox2 {
        overflow: hidden;
        background: #fff;
        border: 2px solid var(--site-accent);
        border-radius: 34px;
        box-shadow: 0 12px 28px rgba(5,35,76,.12);
    }

    .leadership-message .princialimg {
        width: 100%;
        height: 285px;
        padding: 0;
        object-fit: cover;
        object-position: top center;
        border: 0;
        border-radius: 30px 30px 0 0;
    }

    .leadership-message .prinamep.princoll {
        min-height: 86px;
        margin: 0;
        padding: 16px 10px 12px;
        display: block;
        color: #fff;
        font-size: 23px;
        line-height: 28px;
        background: linear-gradient(135deg, #073669, #021f4d);
    }

    .leadership-message .princoll .princ22 {
        color: var(--site-accent);
        font-size: 17px;
    }

    .leadership-message .headingph1 {
        position: relative;
        min-height: 55px;
        margin: 0 0 20px;
        padding: 4px 0 13px 72px;
        color: #072d5d;
        font-size: 29px;
        line-height: 38px;
        text-transform: uppercase;
        border: 0;
    }

        .leadership-message .headingph1:after {
            content: "";
            position: absolute;
            left: 72px;
            bottom: 4px;
            width: min(430px, calc(100% - 72px));
            height: 2px;
            background: var(--site-accent);
        }

        .leadership-message .headingph1:before {
            content: "";
            position: absolute;
            left: min(499px, calc(100% - 4px));
            bottom: 1px;
            width: 8px;
            height: 8px;
            background: var(--site-accent);
            border-radius: 50%;
        }

.leadership-title-icon {
    position: absolute;
    left: 0;
    top: -3px;
    width: 52px;
    height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 23px;
    background: linear-gradient(135deg, #0a477c, #021e4c);
    border-radius: 50%;
}

.leadership-message .MsoNormal {
    margin: 0 0 13px;
    color: #092b56;
    font-size: 15px;
    line-height: 1.48;
    text-align: left;
    float:left;
    width:100%;
}

    .leadership-message .MsoNormal br {
        display: block;
        content: "";
        margin-top: 10px;
    }

.leadership-message .prinamep22 {
    width: auto;
    min-width: 150px;
    margin: 6px 0 0 auto;
    float: none;
    color: #062958;
    font-size: 17px;
    line-height: 22px;
    text-align: justify;
    float:left;
    width:100%;
}

    .leadership-message .prinamep22 .princ22 {
        color: #062958;
        font-size: 14px;
    }

@media (max-width: 991px) {
    .leadership-message .container {
        padding: 28px 24px;
    }

    .leadership-message .row {
        grid-template-columns: 235px minmax(0, 1fr);
        gap: 0 25px;
    }

    .leadership-message .princialimg {
        height: 245px;
    }

    .leadership-message .headingph1 {
        font-size: 24px;
    }
}

@media (max-width: 767px) {
    .leadership-message {
        padding: 0 8px;
    }

        .leadership-message .container {
            padding: 28px 18px;
        }

        .leadership-message .row {
            display: block;
        }

        .leadership-message .princbox2 {
            max-width: auto;
            margin: 0 auto 28px;
        }

        .leadership-message .headingph1 {
            min-height: 48px;
            padding-left: 58px;
            font-size: 21px;
            line-height: 30px;
        }

    .leadership-title-icon {
        width: 44px;
        height: 44px;
        font-size: 19px;
    }

    .leadership-message .headingph1:after {
        left: 58px;
        width: calc(100% - 58px);
    }

    .leadership-message .headingph1:before {
        left: auto;
        right: 0;
    }

    .leadership-message .MsoNormal {
        font-size: 14px;
        line-height: 1.55;
    }
}

/* Content refresh - header, menu and hero slider are intentionally untouched. */
body {
    background: #f6f8fb;
}

.main,
.aboutkk,
.course-area,
.gallery-area,
.home-staff,
.contactkk,
.staff-page-section {
    background: #f6f8fb;
}

.about-area,
.course-area,
.gallery-area,
.home-staff,
.testimonial-area,
.downloadappm,
.contact-area,
.staff-page-section {
    position: relative;
}

.about-area .container,
.home-purpose .container,
.home-news-board .container,
.course-area .container,
.choose-area .container,
.gallery-area .container,
.home-staff .container,
.testimonial-area .container,
.contact-area .container,
.staff-page-section .container {
    max-width: 1280px;
}

.site-heading {
    margin-bottom: 36px;
}

.site-title-tagline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 15px;
    border: 1px solid rgba(217,154,8,.24);
    border-radius: 999px;
    background: rgba(217,154,8,.1);
    color: #d99a08;
    font-weight: 800;
}

.site-title {
    color: #08294e;
    letter-spacing: 0;
}

.site-heading p,
.about-text,
.course-text,
.choose-item-info p,
.testimonial-quote p {
    color: #4f6074;
}

.aboutkk .about-area {
    padding: 74px 0 60px;
}

.aboutkk .about-right {
    padding: 34px;
    border: 1px solid #e4ebf3;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 35px rgba(8,41,78,.08);
}

.aboutkk .imgmar,
.aboutkk .hero-section,
.aboutkk .hero-slider,
.aboutkk .aboutimg {
    border-radius: 8px;
    overflow: hidden;
}

.aboutkk .imgmar {
  /*  box-shadow: 0 18px 40px rgba(8,41,78,.14);*/
}

.about-bottom .about-phone {
    border: 1px solid #e5ebf3;
    border-radius: 8px;
    background: #f8fafc;
}

.home-purpose {
    padding: 8px 0 56px;
    background: #f6f8fb;
}

.purpose-shell {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.purpose-item {
    display: flex;
    gap: 16px;
    min-height: 132px;
    padding: 24px;
    border: 1px solid #e2eaf3;
    border-radius: 8px;
    background: #062e4e;
    box-shadow: 0 12px 28px rgba(8,41,78,.07);
    transition: transform .2s ease, box-shadow .2s ease;
}

.purpose-item:hover,
.course-item:hover,
.home-staff-card:hover,
.gallery-item:hover,
.testimonial-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 38px rgba(8,41,78,.12);
}

.purpose-icon,
.choose-item-icon,
.counter-box .icon {
    flex: 0 0 auto;
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #08294e;
    color: #fff;
    font-size: 24px;
    margin-left:15px!important;
}

.purpose-copy h3 {
    margin: 0 0 7px;
    color: #08294e;
    font-size: 20px;
    font-weight: 800;
}

.purpose-copy p {
    margin: 0;
    color: #536579;
    line-height: 1.55;
}

.home-news-board {
    padding: 60px 0;
    background: linear-gradient(135deg, #eef3fa, #fff);
}

.news-board-shell {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid #dde8f3;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(8,41,78,.1);
}

.news-board-aside {
    padding: 32px;
    color: #fff;
    background: #08294e;
}

.news-board-bell {
    width: 56px;
    height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 18px;
    border-radius: 8px;
    background: #d99a08;
    font-size: 24px;
}

.news-board-aside h2 {
    margin: 0 0 22px;
    color: #fff;
    font-size: 28px;
    line-height: 1.2;
}

.news-board-view {
    color: #fff;
    font-weight: 800;
}

.news-board-list {
    padding: 18px;
}

.news-board-item {
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr) auto;
    gap: 16px;
    align-items: center;
    padding: 16px;
    border-bottom: 1px solid #edf1f6;
}

.news-board-item:last-child {
    border-bottom: 0;
}

.news-date-tile {
    min-height: 70px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    background: #f1f5fa;
    color: #08294e;
    font-weight: 900;
}

.news-date-day {
    display: block;
    font-size: 24px;
    line-height: 1;
}

.news-date-month {
    display: block;
    color: #d99a08;
    font-size: 12px;
    text-transform: uppercase;
}

.news-item-copy h3 {
    margin: 0 0 5px;
    color: #08294e;
    font-size: 18px;
    font-weight: 800;
}

.news-item-description,
.news-item-description p {
    margin: 0;
    color: #5a6b7d;
    line-height: 1.5;
}

.news-new-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(217,154,8,.12);
    color: #b77a00;
    font-size: 12px;
    font-weight: 900;
}

.leadership-message {
    padding: 22px 0;
    background: #f6f8fb;
}

.leadership-message .container {
    border: 1px solid #dde8f3;
    border-bottom: 4px solid #d99a08;
    border-radius: 8px;
    box-shadow: 0 18px 42px rgba(8,41,78,.08);
}

.leadership-message .princbox2 {
    border-radius: 8px;
    border-color: #d99a08;
}

.leadership-message .princialimg {
    border-radius: 6px 6px 0 0;
}

.home-staff,
.course-area,
.gallery-area {
    padding: 70px 0;
}

.home-staff-card,
.course-item,
.gallery-item,
.testimonial-item,
.contact-info,
.contact-form,
.contact-img {
    border-radius: 50px;
    border: 1px solid #e1eaf3;
    background: #fff;
    box-shadow: 0 12px 28px rgba(8,41,78,.07);
    transition: transform .2s ease, box-shadow .2s ease;
}

.home-staff-card {
    min-width: 240px;
    padding: 20px;
    text-align: center;
}

.home-staff-card img {
    width: 130px;
    height: 130px;
    margin: 0 auto 14px;
    border: 5px solid #eef3fa;
    border-radius: 50%;
    object-fit: cover;
}

.home-staff-card h3,
.course-title a,
.facility-title a {
    color: #08294e;
}

.home-staff-tabs {
    margin-bottom: 28px;
}

.home-staff-tab {
    border-radius: 999px;
    background: #fff;
    color: #08294e;
}

.course-item {
    overflow: hidden;
}

.course-img img,
.gallery-img img,
.facility-img img {
    transition: transform .35s ease;
}

.course-item:hover .course-img img,
.gallery-item:hover .gallery-img img,
.facility-item:hover .facility-img img {
    transform: scale(1.05);
}

.course-content {
    padding: 22px;
}

.course-meta {
    border-bottom: 1px solid #edf1f6;
    padding-bottom: 12px;
}

.choose-area {
    background: #08294e;
}

.choose-area::before {
    opacity: .08;
}

.choose-item {
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,.15);
    background: rgba(255,255,255,.08);
}

.choose-item-info h4,
.choose-content-info .site-title,
.choose-content-info p {
    color: #fff;
}

.choose-item-info p {
    color: rgba(255,255,255,.78);
}

.choose-img img {
    border-radius: 8px;
    box-shadow: 0 20px 46px rgba(0,0,0,.28);
}

.gallery-item {
    overflow: hidden;
}

.gallery-content::before {
    background: rgba(8,41,78,.72);
}

.gallery-link {
    background: #d99a08;
}

.testimonial-area {
    background: #08294e !important;
}

.testimonial-item {
    padding: 28px;
}

.testimonial-quote-icon {
    color: rgba(217,154,8,.18);
}

.downloadappm {
    padding: 72px 0;
    background: linear-gradient(135deg, #fff, #eef3fa);
}

.mobapboxx {
    overflow: hidden;
    border: 1px solid #dde8f3;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(8,41,78,.08);
}

.downloadappteh1,
.downloadappteh2 {
    color: #08294e;
}

.aboutus-page-bg {
    background: linear-gradient(135deg, #08294e, #0d3a70);
}

.aboutus-page {
    background: #f6f8fb;
}

.aboutus-page-bg {
    position: relative;
    overflow: hidden;
    padding: 46px 0 42px !important;
    background: linear-gradient(135deg, rgba(6,26,51,.96), rgba(8,41,78,.92)), url("../img/school_images.jpg") center/cover no-repeat !important;
}

.aboutus-page-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(8,41,78,.96), rgba(8,41,78,.82) 55%, rgba(8,41,78,.62));
}

.aboutus-page-bg .container {
    position: relative;
    z-index: 1;
}

.aboutus-pagetext,
.aboutus-pagetext-h2,
.aboutus-pagetext-ul {
    float: none !important;
}

.aboutus-pagetext-h2 {
    margin: 0 0 12px !important;
    color: #fff !important;
    font-size: 38px !important;
    line-height: 1.15 !important;
    font-weight: 850 !important;
    text-align: left !important;
    text-shadow: 0 2px 16px rgba(0,0,0,.28);
}

.aboutus-pagetext-ul {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

.aboutus-pagetext-ul li,
.aboutus-pagetext-ul li a,
.aboutus-pagetext-ul li span {
    float: none !important;
    width: auto !important;
}

.aboutus-pagetext-ul li a,
.aboutus-pagetext-ul li span,
.hcoloraaa {
    color: rgba(255,255,255,.9) !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    text-decoration: none;
}

.aboutus-pagetext-ul li a:hover {
    color: #ffc400 !important;
}

.allpage {
    margin: 0 !important;
    padding: clamp(32px, 5vw, 54px) 0 clamp(40px, 6vw, 64px) !important;
    background: #fff;
}

.allpage .container {
    width: min(calc(100% - clamp(24px, 4vw, 48px)), 1320px);
    max-width: 1320px;
}

.pagemmargin {
    float: none !important;
    margin: 0 !important;
}

.allpage-text {
    float: none !important;
    padding: clamp(22px, 3vw, 38px) !important;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.allpagetexth1 {
    float: none !important;
    margin: 0 0 22px !important;
    padding: 0 0 16px !important;
    color: #08294e !important;
    font-size: 30px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    border-bottom: 1px solid #dce5f0 !important;
}

.allpagetextp {
    float: none !important;
    color: #435773 !important;
    font-size: 18px !important;
    line-height: 1.78 !important;
    text-align: left !important;
}

.allpagetextp p {
    margin: 0 0 22px;
}

.allpagetextp p:last-child {
    margin-bottom: 0;
}

.allpagetextp b,
.allpagetextp strong {
    color: #08294e;
}

.pageimgg,
.alpimgg {
    float: none !important;
}

.pageimgg {
    overflow: hidden;
    border-radius: 0;
    box-shadow: none;
}

.alpimgg {
    display: block;
    width: 100%;
    min-height: clamp(220px, 32vw, 320px);
    padding: 0 !important;
    border: 0 !important;
    object-fit: cover;
}

/* Static inner pages */
.allpage > .container > .pagemmargin > .row {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
}

.allpage > .container > .pagemmargin > .row > [class*="col-"] {
    float: none !important;
}

.allpage .row {
    row-gap: 24px;
}

.allpage-text,
.physics-lab-content,
.contact-form,
.career-card,
.gallery-mainsec,
.my-gallery,
.tenderboxx22,
.discwpr,
.medcovbox,
.video-wpr {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.allpage-text,
.physics-lab-content {
    min-height: 100%;
}

.pageimgg {
    height: 100%;
    background: transparent;
}

.alpimgg {
    height: 100%;
    min-height: 390px;
    max-height: 520px;
}

.allpagetextp,
.allpagetextp p,
.physics-lab-content,
.physics-lab-content p,
.contpp {
    color: #435773 !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.76 !important;
    letter-spacing: 0 !important;
}

.allpagetextp br {
    display: block;
    content: "";
    margin-top: 12px;
}

.allpagetexth1,
.physics-lab-content h1,
.physics-lab-content h2,
.physics-lab-content h3,
.career-card-title,
.contact-form-header h2 {
    color: #08294e !important;
    font-family: "Arial Black", "Segoe UI", Arial, sans-serif !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
}

.contactkk,
.career-section {
    padding: 54px 0 64px !important;
    background: #f6f8fb !important;
}

.contact-area {
    padding: 0 !important;
}

.contact-content {
    margin-bottom: 28px;
}

.contact-info {
    height: 100%;
    min-height: 178px;
    padding: 28px 22px !important;
    border: 1px solid #e2eaf3 !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(8,41,78,.08) !important;
}

.contact-info-icon {
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    border-radius: 50%;
    background: #eef3fa;
    color: #d99a08 !important;
    font-size: 24px;
}

.contact-info-content h5 {
    margin: 0 0 8px;
    color: #08294e;
    font-size: 19px;
    font-weight: 850;
}

.contact-wrapper {
    margin-top: 0;
}

.contact-img {
    height: 100%;
    border-radius: 10px !important;
    box-shadow: 0 18px 42px rgba(8,41,78,.1);
}

.contact-img img {
    width: 100%;
    height: 100%;
    min-height: 420px;
    object-fit: cover;
}

.contact-form {
    padding: 34px !important;
}

.contact-form .form-control,
.career-control,
.career-file {
    min-height: 46px;
    border: 1px solid #d9e3ef !important;
    border-radius: 8px !important;
    color: #263b56 !important;
    box-shadow: none !important;
}

.contact-form textarea.form-control,
textarea.career-control {
    min-height: 126px;
}

.career-card {
    max-width: 980px;
    margin: 0 auto;
    overflow: hidden;
}

.career-form {
    background: #fff !important;
}

.career-submit,
.theme-btn,
.viewico {
    border: 0 !important;
    border-radius: 7px !important;
    background: #052f68 !important;
    color: #fff !important;
    font-weight: 850 !important;
    box-shadow: 0 12px 24px rgba(5,47,104,.16);
}

.career-submit:hover,
.theme-btn:hover,
.viewico:hover {
    background: #ffc400 !important;
    color: #05264f !important;
}

.gallery-mainsec,
.my-gallery {
    padding: 24px !important;
}

.photo-item,
.medcovbox {
    overflow: hidden;
}

.thumbnail,
.thumbnailmedia,
.photo-item .thumbnail {
    display: block !important;
    width: 100% !important;
    height: 245px !important;
    object-fit: cover !important;
    border: 0 !important;
    border-radius: 8px !important;
}

.headingcatth1,
.video-title-h {
    min-height: 54px !important;
    margin: 0 !important;
    padding: 14px 16px !important;
    color: #08294e !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    font-weight: 850 !important;
    text-align: center !important;
}

.video-wpr {
    overflow: hidden;
    padding: 0 !important;
}

.video-ifrm-wpr,
.video-ifrm-wpr iframe {
    float: none !important;
}

.video-ifrm-wpr iframe {
    height: 245px !important;
}

.tenderboxx22,
.tenderboxx {
    padding: 0 !important;
    background: transparent !important;
}

.tendermmbox {
    margin-bottom: 18px !important;
    padding: 24px !important;
    border: 1px solid #e2eaf3 !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(8,41,78,.07) !important;
}

.tendermmboxp {
    display: inline-flex;
    margin: 0 0 10px !important;
    padding: 7px 12px !important;
    border-radius: 999px;
    background: #eef3fa;
    color: #052f68 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

.tendermmboxh1 {
    margin: 0 0 8px !important;
    color: #08294e !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
    font-weight: 850 !important;
}

.tendermmboxh2 {
    margin: 0 !important;
    color: #435773 !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
}

.tendermmboxul {
    margin: 16px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.tendermmboxul a {
    color: #052f68 !important;
    font-weight: 800;
}

.updatingsoon-sec,
.gallery-empty,
.gallery-loading,
.text-center[style*="padding:30px"] {
    padding: 34px !important;
    border: 1px solid #e2eaf3;
    border-radius: 10px;
    background: #fff;
    color: #435773;
    box-shadow: 0 12px 30px rgba(8,41,78,.07);
}

.discwpr {
    float: none !important;
    margin: 0 0 24px !important;
    padding: 24px !important;
}

.mpdhroup-h {
    float: none !important;
    margin: 0 0 16px !important;
    padding: 0 0 12px !important;
    border-bottom: 1px solid #dce5f0;
    color: #08294e !important;
    font-size: 23px !important;
    font-weight: 900 !important;
}

.discwprtbl-wpr {
    float: none !important;
    overflow-x: auto;
}

.discwprtbl-wpr table {
    margin-bottom: 0;
    border-color: #dfe7f1 !important;
}

.discwprtbl-wpr table tr th {
    background: #052f68 !important;
    color: #fff !important;
    font-weight: 850;
}

.discwprtbl-wpr table tr td {
    color: #435773;
    vertical-align: middle !important;
}

/* Special Features */
.special-features-page {
    padding-top: 46px !important;
}

.special-features-intro {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
    gap: 30px;
    align-items: stretch;
    margin-bottom: 30px;
}

.special-features-intro-copy,
.special-features-intro-image,
.special-feature-card {
    overflow: hidden;
    border: 1px solid #e2eaf3;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(8,41,78,.08);
}

.special-features-intro-copy {
    padding: 40px;
}

.special-features-intro-copy span {
    display: inline-flex;
    margin-bottom: 12px;
    padding: 7px 12px;
    border-radius: 999px;
    background: #eef3fa;
    color: #052f68;
    font-size: 13px;
    font-weight: 850;
}

.special-features-intro-copy h1 {
    margin: 0 0 16px;
    color: #08294e;
    font-family: "Arial Black", "Segoe UI", Arial, sans-serif;
    font-size: 38px;
    line-height: 1.15;
    font-weight: 900;
}

.special-features-intro-copy p {
    max-width: 720px;
    margin: 0;
    color: #435773;
    font-size: 18px;
    line-height: 1.75;
}

.special-features-intro-image img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
}

.special-features-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px;
}

.special-feature-wide {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(320px, .8fr) minmax(0, 1.2fr);
}

.special-feature-card:not(.special-feature-wide) {
    display: flex;
    flex-direction: column;
}

.special-feature-media {
    min-height: 220px;
    background: #eef3fa;
}

.special-feature-wide .special-feature-media {
    min-height: 100%;
}

.special-feature-media img {
    width: 100%;
    height: 100%;
    min-height: 220px;
    object-fit: cover;
}

.special-feature-copy {
    padding: 30px;
}

.special-feature-copy h2 {
    margin: 0 0 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid #dce5f0;
    color: #08294e;
    font-size: 25px;
    line-height: 1.25;
    font-weight: 900;
}

.special-feature-copy ul {
    margin: 0;
    padding-left: 20px;
    color: #435773;
    font-size: 16px;
    line-height: 1.75;
}

.special-feature-copy li {
    margin-bottom: 8px;
}

.special-feature-copy li:last-child {
    margin-bottom: 0;
}

/* News & Events */
.news-events-page {
    padding-top: 48px !important;
}

.news-events-page .container {
    max-width: 1120px;
}

.news-events-page .tenderboxx22 {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.news-events-page .tenderboxx {
    display: grid;
    gap: 18px;
    padding: 0 !important;
    background: transparent !important;
}

.news-events-page .tendermmbox {
    position: relative;
    overflow: hidden;
    margin: 0 !important;
    padding: 30px 34px 30px 150px !important;
    border: 1px solid #dfe8f3 !important;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: 0 14px 34px rgba(8,41,78,.08) !important;
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}

.news-events-page .tendermmbox::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 6px;
    background: #ffc400;
}

.news-events-page .tendermmbox:hover {
    transform: translateY(-4px);
    border-color: #cbd9ea !important;
    box-shadow: 0 22px 48px rgba(8,41,78,.13) !important;
}

.news-events-page .tendermmboxp {
    position: absolute;
    left: 26px;
    top: 30px;
    width: 110px;
    min-height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 8px 10px !important;
    border-radius: 10px;
    background: #052f68;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
    text-align: center;
    white-space: nowrap;
}

.news-events-page .tendermmboxh1 {
    margin: 0 0 12px !important;
    color: #08294e !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
    font-weight: 850 !important;
}

.news-events-page .tendermmboxh2 {
    margin: 0 !important;
    color: #435773 !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    font-weight: 400 !important;
}

.news-events-page .tendermmboxul {
    margin: 18px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.news-events-page .tendermmboxul li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.news-events-page .tendermmboxul a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 46px;
    padding: 0 18px;
    border-radius: 7px;
    background: #eef3fa;
    color: #052f68 !important;
    font-size: 14px;
    font-weight: 850;
    text-decoration: none;
}

.news-events-page .tendermmboxul a:hover {
    background: #ffc400;
    color: #05264f !important;
}

.news-events-page .downloaddt {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #052f68;
    color: #fff;
}

.news-events-page .updatingsoon-sec {
    max-width: 720px;
    margin: 0 auto;
    padding: 46px 30px !important;
    text-align: center;
}

.news-events-page .updatingsoon-sec-h2 {
    margin: 0 0 10px !important;
    color: #08294e !important;
    font-size: 30px !important;
    font-weight: 900 !important;
}

.news-events-page .updatingsoon-sec-p {
    margin: 0 !important;
    color: #435773 !important;
    font-size: 16px !important;
}

.contact-info {
    min-height: 190px;
    padding: 26px 20px;
}

.contact-info-icon {
    color: #d99a08;
}

.contact-form,
.contact-img {
    overflow: hidden;
}

.footer-area {
    background: linear-gradient(135deg, #061a33, #08294e 70%, #0d3a70);
}

.footer-widget-box {
    color: rgba(255,255,255,.82);
}

.footer-widget-title {
    color: #fff;
}

.footer-list li a,
.footer-contact li,
.footer-contact li a {
    color: rgba(255,255,255,.82);
}

@media (max-width: 991px) {
    .purpose-shell,
    .news-board-shell {
        grid-template-columns: 1fr;
    }

    .aboutkk .about-right {
        margin-top: 24px;
        padding: 24px;
    }

    .allpage > .container > .pagemmargin > .row {
        display: block;
    }

    .pageimgg {
        margin-bottom: 24px;
    }

    .alpimgg,
    .contact-img img {
        height: auto;
        min-height: 280px;
        max-height: none;
    }

    .contact-form {
        margin-top: 24px;
    }

    .thumbnail,
    .thumbnailmedia,
    .photo-item .thumbnail,
    .video-ifrm-wpr iframe {
        height: 220px !important;
    }

    .special-features-intro,
    .special-feature-wide {
        grid-template-columns: 1fr;
    }

    .special-features-grid {
        grid-template-columns: 1fr;
    }

    .special-feature-wide .special-feature-media {
        min-height: 260px;
    }

    .aboutus-page-bg {
        padding: 38px 0 34px !important;
    }

    .aboutus-pagetext-h2 {
        font-size: 32px !important;
    }

    .allpage {
        padding: 38px 0 48px !important;
    }

    .allpage-text {
        padding: 28px !important;
    }

    .allpagetexth1 {
        font-size: 26px !important;
    }

    .allpagetextp {
        font-size: 16px !important;
        line-height: 1.72 !important;
    }
}

@media (max-width: 575px) {
    .purpose-item,
    .news-board-item {
        grid-template-columns: 1fr;
    }

    .news-board-aside,
    .news-board-list,
    .aboutkk .about-right {
        padding: 20px;
    }

    .site-title {
        font-size: 28px;
    }

    .aboutus-page-bg {
        padding: 30px 0 28px !important;
    }

    .allpage .container,
    .contactkk .container,
    .career-section .container {
        width: min(100% - 24px, 100%);
    }

    .aboutus-pagetext-h2 {
        font-size: 27px !important;
    }

    .aboutus-pagetext-ul {
        flex-wrap: wrap;
        gap: 6px 10px;
    }

    .aboutus-pagetext-ul li a,
    .aboutus-pagetext-ul li span,
    .hcoloraaa {
        font-size: 13px !important;
    }

    .allpage {
        padding: 28px 0 38px !important;
    }

    .allpage-text {
        padding: 22px 18px !important;
        border-radius: 8px;
    }

    .contact-form,
    .career-form,
    .gallery-mainsec,
    .my-gallery,
    .discwpr,
    .tendermmbox {
        padding: 20px !important;
    }

    .allpagetexth1 {
        margin-bottom: 16px !important;
        font-size: 23px !important;
    }

    .allpagetextp {
        font-size: 15px !important;
        line-height: 1.72 !important;
    }

    .alpimgg {
        min-height: 235px;
    }

    .thumbnail,
    .thumbnailmedia,
    .photo-item .thumbnail,
    .video-ifrm-wpr iframe {
        height: 205px !important;
    }

    .mpdhroup-h {
        font-size: 19px !important;
    }

    .discwprtbl-wpr table {
        min-width: 680px;
    }

    .special-features-intro-copy,
    .special-feature-copy {
        padding: 22px 18px;
    }

    .special-features-intro-copy h1 {
        font-size: 29px;
    }

    .special-features-intro-copy p,
    .special-feature-copy ul {
        font-size: 15px;
        line-height: 1.7;
    }

    .special-feature-copy h2 {
        font-size: 21px;
    }

    .special-features-intro-image img,
    .special-feature-media,
    .special-feature-media img {
        min-height: 220px;
    }

    .news-events-page .tendermmbox {
        padding: 20px !important;
    }

    .news-events-page .tendermmboxp {
        position: static;
        width: auto;
        min-height: 0;
        display: inline-flex;
        margin: 0 0 12px !important;
        padding: 7px 12px !important;
        border-radius: 999px;
        white-space: normal;
    }

    .news-events-page .tendermmboxh1 {
        font-size: 19px !important;
    }

    .news-events-page .tendermmboxul a {
        width: 100%;
        justify-content: center;
        text-align: center;
    }
}

body,
.smile-body,
.smile-body p,
.smile-body a,
.smile-body li,
.smile-body span,
.smile-body label,
.smile-body input,
.smile-body select,
.smile-body textarea,
.smile-body button,
.allpagetextp,
.allpagetextp p,
.physics-lab-content,
.physics-lab-content p,
.contact-form,
.career-card,
.news-events-page {
    font-family: var(--body-font) !important;
}

.smile-body h1,
.smile-body h2,
.smile-body h3,
.smile-body h4,
.smile-body h5,
.smile-body h6,
.smile-hero-copy h1,
.smile-hero-copy h1 span,
.smile-hero-banner-content .smile-hero-copy h1,
.site-title,
.allpagetexth1,
.physics-lab-content h1,
.physics-lab-content h2,
.physics-lab-content h3,
.career-card-title,
.contact-form-header h2,
.news-events-page-title,
.tendermmboxh1,
.special-features-intro-copy h1,
.special-feature-copy h2 {
    font-family: var(--heading-font) !important;
    letter-spacing: 0 !important;
}
