: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: #ff6425;
    color: #071d38;
    font-size: 14px;
    box-shadow: 0 4px 18px rgba(8,41,78,.08);
}

.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-contact-strip span,
.smile-social a {
    color: #071d38;
    text-decoration: none;
    white-space: nowrap;
}

.smile-contact-strip a,
.smile-contact-strip span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-weight: 850;
}

.smile-contact-strip i {
    color: #05264f;
    margin-right: 0;
}

.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(5,38,79,.12);
    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);
}

.site-ambient-bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.smile-navbar .site-ambient-bg,
.top-menusec .site-ambient-bg {
    opacity: .32;
    mix-blend-mode: multiply;
}

.smile-footer .site-ambient-bg,
.footer-area .site-ambient-bg {
    opacity: .64;
    mix-blend-mode: screen;
}

.top-menusec,
.footer-area {
    position: relative;
}

.top-menusec {
    overflow: visible;
}

.footer-area {
    overflow: hidden;
}

.school-navigation-row,
.footer-shape,
.footer-widget,
.copyright {
    position: relative;
    z-index: 2;
}

.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;
    overflow: visible;
    background: #fff;
    box-shadow: 0 10px 28px rgba(6,29,63,.07);
}

.smile-navbar-inner {
    position: relative;
    z-index: 2;
    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 {
    position: relative;
    z-index: 3;
    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: #ff6425;
    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: linear-gradient(135deg, #041a38 0%, #05264f 58%, #082f66 100%);
    color: rgba(255,255,255,.86);
}

.smile-footer-grid {
    display: grid;
    grid-template-columns: 1.35fr repeat(4, minmax(0, 1fr));
    gap: 34px;
    padding: 58px 0 42px;
}

.smile-footer h3,
.smile-footer h4 {
    color: #fff;
}

.smile-footer h4 {
    margin: 0 0 18px;
    font-size: 16px;
    text-transform: uppercase;
    position: relative;
    padding-bottom: 10px;
}

.smile-footer h4::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 42px;
    height: 3px;
    border-radius: 999px;
    background: #ffc400;
}

.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 a:hover {
    color: #ffc400;
}

.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: 96px;
    height: 86px;
    object-fit: contain;
    margin-bottom: 12px;
}

.smile-footer-brand h3 {
    margin: 0 0 8px;
    font-family: Georgia, serif;
    font-size: 24px;
    line-height: 1.2;
}

.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;
    margin: 0;
}

.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-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-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .smile-footer-brand {
        grid-column: 1 / -1;
    }

    .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 span {
        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 {
        width: 100%;
        justify-content: center;
        gap: 10px;
    }

    .smile-contact-strip a[href^="tel:"]:nth-of-type(2),
    .smile-contact-strip a[href^="mailto:"] {
        display: none;
    }

    .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: 120px;
    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;
}

.gps-about-static-page {
    --about-primary: #082f68;
    --about-accent: #ff6425;
    --about-soft: #f4f8fd;
}

.gps-about-profile-hero {
    position: relative;
    overflow: hidden;
    margin-bottom: 42px;
    padding: clamp(34px, 5vw, 64px);
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(5, 38, 79, .97), rgba(8, 47, 104, .9)), url("../img/gyanprapti/about-v2-img1.jpg") center/cover no-repeat;
    color: #fff;
}

.gps-about-profile-hero::after {
    content: "";
    position: absolute;
    inset: auto 0 0 0;
    height: 5px;
    background: var(--about-accent);
}

.gps-about-profile-hero .hero-content {
    position: relative;
    z-index: 1;
    max-width: 920px;
}

.gps-about-profile-hero .hero-title {
    margin: 0;
    color: #fff;
    font-size: clamp(36px, 4vw, 62px);
    line-height: 1.05;
    font-weight: 950;
}

.gps-about-profile-hero .hero-subtitle {
    margin-top: 8px;
    color: #ffd9cb;
    font-family: "Nirmala UI", Mangal, "Kokila", Arial, sans-serif;
    font-size: clamp(24px, 2.6vw, 38px);
    font-weight: 850;
}

.gps-about-profile-hero .hero-tagline {
    max-width: 880px;
    margin: 18px 0 0;
    color: rgba(255,255,255,.92);
    font-size: 18px;
    line-height: 1.7;
}

.about-showcase-grid {
    display: grid;
    grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr);
    gap: 34px;
    align-items: start;
}

.image-sticky-container {
    position: sticky;
    top: 118px;
}

.image-wrapper {
    position: relative;
    overflow: hidden;
    margin: 0;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 20px 45px rgba(8, 47, 104, .12);
}

.image-wrapper img {
    width: 100%;
    height: clamp(440px, 44vw, 640px);
    display: block;
    object-fit: cover;
}

.established-badge {
    position: absolute;
    left: 18px;
    top: 18px;
    z-index: 1;
    padding: 9px 14px;
    border-radius: 999px;
    background: var(--about-accent);
    color: #fff;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 1px;
    text-transform: uppercase;
    box-shadow: 0 10px 22px rgba(255, 100, 37, .25);
}

.profile-stack {
    display: grid;
    gap: 24px;
}

.profile-block {
    padding: clamp(26px, 3vw, 40px);
    border: 1px solid #e2ebf5;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(8, 47, 104, .08);
}

.profile-block .lang-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 8px 13px;
    border-radius: 999px;
    background: #fff0ea;
    color: var(--about-accent);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.profile-block h2 {
    margin: 0 0 18px;
    color: var(--about-primary);
    font-size: clamp(28px, 2.8vw, 42px);
    line-height: 1.15;
    font-weight: 950;
}

.profile-block p {
    margin: 0 0 18px;
    color: #43536b;
    font-size: 16px;
    line-height: 1.85;
}

.profile-block[lang="hi"] p {
    font-family: "Nirmala UI", Mangal, "Kokila", Arial, sans-serif;
    font-size: 17px;
}

.profile-block[lang="hi"],
.profile-block[lang="hi"] h2,
.profile-block[lang="hi"] h4,
.profile-block[lang="hi"] .lang-tag,
.profile-block[lang="hi"] .motto-text,
.profile-block[lang="hi"] .featured-statement p {
    font-family: "Nirmala UI", Mangal, "Kokila", Arial, sans-serif !important;
}

.profile-block .hindi-lead {
    color: var(--about-primary);
    font-weight: 800;
}

.hindi-profile-full {
    grid-column: 1 / -1;
    margin-top: 10px;
}

.hindi-profile-full h2,
.hindi-profile-full .hindi-lead {
    max-width: 980px;
}

.hindi-profile-full > p:not(.hindi-lead) {
    max-width: none;
}

.hindi-profile-full .featured-statement,
.hindi-profile-full .motto-box {
    max-width: 100%;
}

@media (min-width: 992px) {
    .hindi-profile-full {
        padding: 44px;
    }

    .hindi-profile-full > p:not(.hindi-lead) {
        columns: 2;
        column-gap: 42px;
    }
}

.featured-statement {
    margin: 24px 0;
    padding: 22px 24px;
    border-left: 5px solid var(--about-accent);
    border-radius: 10px;
    background: var(--about-soft);
}

.featured-statement p {
    margin: 0;
    color: var(--about-primary);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.65;
}

.motto-box {
    margin-top: 26px;
    padding: 22px 24px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--about-primary), #031b43);
    color: #fff;
}

.motto-box h4 {
    margin: 0 0 8px;
    color: #fff;
    font-size: 18px;
    font-weight: 950;
}

.motto-text {
    color: rgba(255,255,255,.9);
    font-size: 17px;
    line-height: 1.6;
    font-weight: 800;
}

@media (max-width: 991px) {
    .about-showcase-grid {
        grid-template-columns: 1fr;
    }

    .image-sticky-container {
        position: static;
    }

    .image-wrapper img {
        height: 420px;
    }
}

@media (max-width: 575px) {
    .gps-about-profile-hero {
        border-radius: 10px;
        padding: 28px 20px;
    }

    .gps-about-profile-hero .hero-tagline,
    .profile-block p,
    .profile-block[lang="hi"] p,
    .featured-statement p {
        font-size: 15px;
    }

    .image-wrapper img {
        height: 310px;
    }

    .profile-block {
        padding: 22px 18px;
    }
}

.gps-director-page {
    --director-primary: #06285b;
    --director-accent: #ff6425;
    --director-soft: #f4f8fd;
}

.premium-hero {
    overflow: hidden;
    margin-bottom: 34px;
    padding: clamp(34px, 5vw, 62px);
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(6, 40, 91, .98), rgba(3, 27, 67, .9)), url("../img/gyanprapti/mission-bnr.jpg") center/cover no-repeat;
    color: #fff;
}

.premium-hero .hero-badge {
    display: inline-flex;
    margin-bottom: 16px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    color: #ffd8cb;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.premium-hero .hero-main-title {
    margin: 0;
    color: #fff;
    font-size: clamp(36px, 4vw, 58px);
    line-height: 1.08;
    font-weight: 950;
}

.premium-hero .hero-sub-title {
    margin-top: 10px;
    color: #ffd8cb;
    font-family: "Nirmala UI", Mangal, "Kokila", Arial, sans-serif;
    font-size: clamp(23px, 2.4vw, 34px);
    font-weight: 850;
}

.main-layout-grid {
    display: grid;
    grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr);
    gap: 34px;
    align-items: stretch;
}

.executive-sticky-rail {
    position: sticky;
    top: 118px;
    align-self: stretch;
}

.executive-profile-card {
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 20px 45px rgba(6, 40, 91, .12);
}

.avatar-frame {
    position: relative;
    flex: 1 1 auto;
    min-height: 430px;
    background: #dfe8f3;
}

.avatar-frame img {
    width: 100%;
    height: 100%;
    min-height: 430px;
    display: block;
    object-fit: cover;
}

.avatar-gradient-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(6,40,91,0) 45%, rgba(6,40,91,.82) 100%);
}

.live-status-badge {
    position: absolute;
    left: 18px;
    bottom: 18px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 14px;
    border-radius: 999px;
    background: var(--director-accent);
    color: #fff;
    font-size: 12px;
    font-weight: 950;
}

.executive-meta-details {
    padding: 24px;
}

.executive-name {
    margin: 0 0 6px;
    color: var(--director-primary);
    font-size: 24px;
    font-weight: 950;
}

.executive-rank,
.executive-inst {
    margin: 0 0 8px;
    color: #4d5c72;
    font-size: 15px;
    line-height: 1.55;
}

.executive-inst {
    color: var(--director-accent);
    font-weight: 900;
}

.institution-location {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    color: var(--director-primary);
    font-size: 14px;
    font-weight: 850;
}

.message-stream-wrapper {
    display: grid;
    gap: 24px;
}

.message-stream-wrapper .narrative-card {
    height: 100%;
}

.narrative-card {
    padding: clamp(26px, 3vw, 40px);
    border: 1px solid #e2ebf5;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(6, 40, 91, .08);
}

.card-lang-header {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 14px;
    color: var(--director-accent);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.card-lang-header span {
    width: 28px;
    height: 3px;
    border-radius: 999px;
    background: var(--director-accent);
}

.narrative-card h2 {
    margin: 0 0 18px;
    color: var(--director-primary);
    font-size: clamp(28px, 2.8vw, 42px);
    line-height: 1.15;
    font-weight: 950;
}

.narrative-card p {
    margin: 0 0 18px;
    color: #43536b;
    font-size: 16px;
    line-height: 1.85;
}

.narrative-card[lang="hi"],
.narrative-card[lang="hi"] h2,
.narrative-card[lang="hi"] p,
.narrative-card[lang="hi"] .card-lang-header {
    font-family: "Nirmala UI", Mangal, "Kokila", Arial, sans-serif !important;
}

.narrative-card[lang="hi"] p {
    font-size: 17px;
}

.hindi-message-full {
    grid-column: 1 / -1;
    margin-top: 2px;
}

@media (min-width: 992px) {
    .hindi-message-full {
        padding: 44px;
    }

    .hindi-message-full > p {
        columns: 2;
        column-gap: 44px;
    }
}

.premium-quote-box {
    position: relative;
    margin: 26px 0;
    padding: 24px 26px;
    border-left: 5px solid var(--director-accent);
    border-radius: 10px;
    background: var(--director-soft);
}

.premium-quote-box i {
    position: absolute;
    right: 22px;
    top: 18px;
    color: rgba(255,100,37,.18);
    font-size: 42px;
}

.premium-quote-box p {
    max-width: 820px;
    margin: 0;
    color: var(--director-primary);
    font-size: 18px;
    font-weight: 850;
    line-height: 1.65;
}

.formal-signoff {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid #e2ebf5;
}

.formal-signoff p {
    margin-bottom: 6px;
}

.formal-signoff .salutation {
    color: #657086;
}

.formal-signoff .name {
    color: var(--director-primary);
    font-size: 22px;
    font-weight: 950;
}

.formal-signoff .creds {
    color: #4d5c72;
    font-size: 14px;
    line-height: 1.6;
}

.institutional-stamp-icon {
    width: 62px;
    height: 62px;
    display: inline-flex;
    flex: 0 0 62px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff0ea;
    color: var(--director-accent);
    font-size: 26px;
}

@media (max-width: 991px) {
    .main-layout-grid {
        grid-template-columns: 1fr;
    }

    .executive-sticky-rail {
        position: static;
    }

    .executive-profile-card,
    .message-stream-wrapper .narrative-card {
        height: auto;
    }

    .avatar-frame,
    .avatar-frame img {
        min-height: 360px;
        height: 360px;
    }
}

@media (max-width: 575px) {
    .premium-hero,
    .narrative-card {
        border-radius: 10px;
        padding: 24px 18px;
    }

    .avatar-frame,
    .avatar-frame img {
        min-height: 310px;
        height: 310px;
    }

    .narrative-card p,
    .narrative-card[lang="hi"] p,
    .premium-quote-box p {
        font-size: 15px;
    }

    .formal-signoff {
        align-items: flex-start;
        flex-direction: column;
    }
}

.mission-vision-page {
    --mv-primary: #06285b;
    --mv-accent: #ff6425;
    --mv-soft: #f4f8fd;
    --mv-orange-light: #fff0ea;
}

.bento-container {
    margin-bottom: 56px;
}

.bento-grid {
    display: grid;
    grid-template-columns: 1.05fr .95fr 1fr;
    grid-auto-rows: minmax(210px, auto);
    gap: 22px;
}

.bento-item {
    overflow: hidden;
    border: 1px solid #e2ebf5;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(6, 40, 91, .08);
}

.cell-header {
    grid-column: span 2;
    padding: clamp(30px, 4vw, 52px);
    background: linear-gradient(135deg, var(--mv-primary), #031b43);
    color: #fff;
}

.cell-header h1 {
    margin: 0 0 14px;
    color: #fff;
    font-size: clamp(42px, 5vw, 72px);
    line-height: 1.02;
    font-weight: 950;
}

.cell-header h1 span {
    color: #ffd6c8;
}

.cell-header p {
    max-width: 620px;
    margin: 0;
    color: rgba(255,255,255,.86);
    font-size: 18px;
    line-height: 1.7;
}

.cell-image {
    grid-row: span 2;
}

.cell-image img {
    width: 100%;
    height: 100%;
    min-height: 450px;
    display: block;
    object-fit: cover;
}

.cell-english,
.cell-hindi,
.cell-stat {
    padding: clamp(24px, 3vw, 34px);
}

.bento-badge {
    display: inline-flex;
    margin-bottom: 14px;
    padding: 8px 13px;
    border-radius: 999px;
    background: #eef5ff;
    color: var(--mv-primary);
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
}

.bento-badge.is-orange {
    background: var(--mv-orange-light);
    color: var(--mv-accent);
}

.bento-item h2 {
    margin: 0 0 14px;
    color: var(--mv-primary);
    font-size: clamp(26px, 2.4vw, 36px);
    line-height: 1.15;
    font-weight: 950;
}

.bento-item p {
    margin: 0;
    color: #43536b;
    font-size: 16px;
    line-height: 1.8;
}

.cell-hindi,
.cell-hindi h2,
.cell-hindi p,
.cell-hindi .bento-badge {
    font-family: "Nirmala UI", Mangal, "Kokila", Arial, sans-serif !important;
}

.cell-hindi p {
    font-size: 17px;
}

.cell-stat {
    display: flex;
    align-items: center;
    gap: 18px;
    background: var(--mv-soft);
}

.stat-icon {
    width: 64px;
    height: 64px;
    display: inline-flex;
    flex: 0 0 64px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--mv-accent);
    color: #fff;
    font-size: 26px;
    box-shadow: 0 14px 26px rgba(255, 100, 37, .25);
}

.cell-stat .stat-title {
    margin-bottom: 5px;
    color: var(--mv-primary);
    font-size: 19px;
    font-weight: 950;
}

.cell-stat .stat-sub {
    color: #68778d;
    font-size: 13px;
    font-weight: 850;
}

.immersive-vision-wrapper {
    display: grid;
    grid-template-columns: minmax(320px, .92fr) minmax(0, 1.08fr);
    gap: 36px;
    align-items: center;
}

.vision-media-canvas {
    position: relative;
}

.media-frame-box {
    position: relative;
    overflow: hidden;
    min-height: 520px;
    border-radius: 18px;
    background: #dfe8f3;
    box-shadow: 0 20px 45px rgba(6, 40, 91, .12);
}

.media-frame-box img {
    width: 100%;
    height: 520px;
    display: block;
    object-fit: cover;
}

.media-tint-mask {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(6,40,91,0) 44%, rgba(6,40,91,.72) 100%);
}

.floating-glass-stat {
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 24px;
    display: grid;
    grid-template-columns: 58px 1fr;
    column-gap: 14px;
    align-items: center;
    padding: 18px;
    border: 1px solid rgba(255,255,255,.38);
    border-radius: 14px;
    background: rgba(255,255,255,.18);
    color: #fff;
    backdrop-filter: blur(12px);
}

.floating-glass-stat i {
    grid-row: span 2;
    width: 58px;
    height: 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--mv-accent);
    color: #fff;
    font-size: 24px;
}

.floating-glass-stat h3 {
    margin: 0 0 4px;
    color: #fff;
    font-size: 21px;
    font-weight: 950;
}

.floating-glass-stat p {
    margin: 0;
    color: rgba(255,255,255,.9);
    font-size: 14px;
    line-height: 1.45;
}

.vision-editorial-flow {
    padding: clamp(10px, 2vw, 22px);
}

.editorial-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 18px;
    color: var(--mv-accent);
    font-size: 13px;
    font-weight: 950;
    text-transform: uppercase;
}

.editorial-badge span {
    width: 34px;
    height: 3px;
    border-radius: 999px;
    background: var(--mv-accent);
}

.vision-editorial-flow h1 {
    margin: 0 0 20px;
    color: var(--mv-primary);
    font-size: clamp(42px, 5vw, 68px);
    line-height: 1.04;
    font-weight: 950;
}

.primary-editorial-statement {
    color: #34435a;
    font-size: 19px;
    line-height: 1.85;
}

.primary-editorial-statement strong {
    color: var(--mv-primary);
}

.secondary-editorial-callout {
    margin-top: 26px;
    padding: 24px 26px;
    border-left: 5px solid var(--mv-accent);
    border-radius: 12px;
    background: var(--mv-soft);
}

.secondary-editorial-callout p {
    margin: 0;
    color: var(--mv-primary);
    font-size: 18px;
    line-height: 1.7;
    font-weight: 850;
}

@media (max-width: 1100px) {
    .bento-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .cell-image {
        grid-row: auto;
    }
}

@media (max-width: 900px) {
    .bento-grid,
    .immersive-vision-wrapper {
        grid-template-columns: 1fr;
    }

    .cell-header {
        grid-column: auto;
    }

    .cell-image img,
    .media-frame-box,
    .media-frame-box img {
        min-height: 380px;
        height: 380px;
    }
}

@media (max-width: 575px) {
    .bento-grid {
        gap: 16px;
    }

    .bento-item,
    .media-frame-box {
        border-radius: 12px;
    }

    .cell-header,
    .cell-english,
    .cell-hindi,
    .cell-stat {
        padding: 22px 18px;
    }

    .cell-stat {
        align-items: flex-start;
        flex-direction: column;
    }

    .cell-image img,
    .media-frame-box,
    .media-frame-box img {
        min-height: 300px;
        height: 300px;
    }

    .floating-glass-stat {
        left: 14px;
        right: 14px;
        bottom: 14px;
        grid-template-columns: 48px 1fr;
        padding: 14px;
    }

    .floating-glass-stat i {
        width: 48px;
        height: 48px;
        font-size: 20px;
    }

    .bento-item p,
    .cell-hindi p,
    .primary-editorial-statement,
    .secondary-editorial-callout p {
        font-size: 15px;
    }
}

.admission-procedure-page {
    --admission-primary: #06285b;
    --admission-accent: #ff6425;
    --admission-soft: #f4f8fd;
}

.admission-procedure-hero {
    position: relative;
    overflow: hidden;
    margin-bottom: 42px;
    padding: clamp(34px, 5vw, 62px);
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(6, 40, 91, .98), rgba(3, 27, 67, .9)), url("../img/gyanprapti/mission-bnr.jpg") center/cover no-repeat;
    color: #fff;
}

.admission-procedure-hero span {
    display: inline-flex;
    margin-bottom: 14px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.14);
    color: #ffd8cb;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.admission-procedure-hero h1 {
    max-width: 820px;
    margin: 0 0 14px;
    color: #fff;
    font-size: clamp(34px, 4vw, 58px);
    line-height: 1.08;
    font-weight: 950;
}

.admission-procedure-hero p {
    max-width: 690px;
    margin: 0 0 24px;
    color: rgba(255,255,255,.88);
    font-size: 18px;
    line-height: 1.7;
}

.premium-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 20px;
    border-radius: 999px;
    background: var(--admission-accent, #ff6425);
    color: #fff !important;
    font-size: 14px;
    font-weight: 950;
    text-decoration: none !important;
    box-shadow: 0 14px 28px rgba(255, 100, 37, .24);
}

.admission-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr);
    gap: 34px;
    align-items: start;
}

.timeline-container,
.mosaic-block {
    border: 1px solid #e2ebf5;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 42px rgba(6, 40, 91, .08);
}

.timeline-container {
    padding: clamp(28px, 3vw, 42px);
}

.section-title {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0 0 28px;
    color: var(--admission-primary);
    font-size: clamp(26px, 2.8vw, 38px);
    font-weight: 950;
}

.section-title i {
    color: var(--admission-accent);
}

.timeline-stream {
    position: relative;
    display: grid;
    gap: 22px;
}

.timeline-stream::before {
    content: "";
    position: absolute;
    left: 10px;
    top: 10px;
    bottom: 10px;
    width: 2px;
    background: #dbe6f2;
}

.timeline-node {
    position: relative;
    display: grid;
    grid-template-columns: 22px 1fr;
    gap: 18px;
}

.node-indicator {
    position: relative;
    z-index: 1;
    width: 22px;
    height: 22px;
    margin-top: 18px;
    border: 5px solid #fff;
    border-radius: 50%;
    background: var(--admission-accent);
    box-shadow: 0 0 0 2px var(--admission-accent), 0 10px 20px rgba(255,100,37,.2);
}

.node-card {
    padding: 22px 24px;
    border-radius: 14px;
    background: var(--admission-soft);
}

.node-step-tag {
    display: inline-flex;
    margin-bottom: 9px;
    padding: 6px 11px;
    border-radius: 999px;
    background: #fff0ea;
    color: var(--admission-accent);
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
}

.node-card h3 {
    margin: 0 0 8px;
    color: var(--admission-primary);
    font-size: 22px;
    font-weight: 950;
}

.node-card p {
    margin: 0;
    color: #4d5c72;
    font-size: 16px;
    line-height: 1.7;
}

.info-mosaic-stack {
    position: sticky;
    top: 118px;
    display: grid;
    gap: 24px;
}

.mosaic-block {
    padding: clamp(26px, 3vw, 34px);
}

.mosaic-block h2,
.mosaic-block h3 {
    margin: 0 0 16px;
    color: var(--admission-primary);
    font-weight: 950;
}

.mosaic-block h2 {
    font-size: 28px;
}

.mosaic-block h3 {
    font-size: 24px;
}

.doc-list {
    display: grid;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.doc-list li {
    position: relative;
    padding-left: 28px;
    color: #43536b;
    font-size: 15px;
    line-height: 1.6;
    font-weight: 750;
}

.doc-list li::before {
    content: "\f058";
    position: absolute;
    left: 0;
    top: 1px;
    color: var(--admission-accent);
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.cta-accent-box {
    background: linear-gradient(135deg, var(--admission-primary), #031b43);
    color: #fff;
}

.cta-accent-box > i {
    display: inline-flex;
    margin-bottom: 12px;
    color: var(--admission-accent);
    font-size: 32px;
}

.cta-accent-box h3 {
    color: #fff;
}

.cta-accent-box p {
    margin: 0 0 20px;
    color: rgba(255,255,255,.82);
    font-size: 16px;
    line-height: 1.7;
}

@media (max-width: 991px) {
    .admission-grid {
        grid-template-columns: 1fr;
    }

    .info-mosaic-stack {
        position: static;
    }
}

@media (max-width: 575px) {
    .admission-procedure-hero,
    .timeline-container,
    .mosaic-block {
        border-radius: 12px;
        padding: 24px 18px;
    }

    .timeline-node {
        gap: 13px;
    }

    .node-card {
        padding: 18px;
    }

    .node-card p,
    .cta-accent-box p {
        font-size: 15px;
    }
}

/* GYAN PRAPTI SCHOOL home redesign */
:root {
    --gps-navy: #06285b;
    --gps-navy-2: #031b43;
    --gps-orange: #ff6425;
    --gps-orange-2: #ff7a2f;
    --gps-text: #0a2859;
    --gps-muted: #657086;
    --gps-line: #e6edf6;
}

.smile-body {
    padding-top: 0;
    background: #fff;
}

.smile-topbar {
    display: block;
    min-height: 50px;
    background: #ff6425;
    color: #fff;
}

.smile-topbar .smile-contact-strip a,
.smile-topbar .smile-contact-strip span,
.smile-topbar .smile-contact-strip i {
    color: #fff;
}

.smile-header {
    position: relative;
    z-index: 100;
}

.smile-navbar {
    position: fixed;
    top: 50px;
    background: var(--gps-navy);
    box-shadow: 0 10px 28px rgba(3, 27, 67, .13);
}

.smile-navbar-inner {
    min-height: 92px;
    padding: 0 0 0 20px;
    gap: 0;
}

.smile-brand {
    position: relative;
    align-self: stretch;
    flex: 0 0 330px;
    min-height: 92px;
    padding: 12px 60px 12px 0;
    background: #fff;
    border-radius: 0 0 76px 0;
}

.smile-brand::before {
    content: "";
    position: absolute;
    left: -120px;
    top: 0;
    bottom: 0;
    width: 120px;
    background: #fff;
}

.smile-brand img {
    position: relative;
    z-index: 1;
    width: 62px;
    height: 62px;
}

.smile-brand-copy {
    z-index: 1;
    padding-left: 0;
}

.smile-brand-copy::before {
    display: none;
}

.smile-brand-copy strong {
    color: #ff302d;
    font-size: 27px;
    line-height: 1;
}

.smile-brand-copy b {
    margin-top: 0;
    color: #163c90;
    font-size: 28px;
    line-height: .95;
}

.smile-brand-copy small {
    margin-top: 5px;
    color: #293a56;
    font-size: 11px;
}

.smile-nav-links {
    flex: 1 1 auto;
    padding: 0 18px;
    border: 0;
}

.smile-nav-links > .ints-ul {
    justify-content: flex-end;
    gap: 2px;
}

.smile-nav-links .ints-ul a {
    color: #fff;
    font-size: 14px;
    font-weight: 850;
    padding: 35px 6px;
}

.smile-nav-links > .ints-ul > li > a.active-menu::after,
.smile-nav-links > .ints-ul > li > a:hover::after {
    bottom: 24px;
    height: 3px;
    background: var(--gps-orange);
}

.smile-nav-links .downmenuuk {
    color: #fff;
}

.smile-nav-links .ints-ul ul {
    top: 100%;
    border-top: 3px solid var(--gps-orange);
    background: var(--gps-navy-2);
}

.smile-nav-links .ints-ul ul a {
    padding: 11px 16px;
}

.gps-call-box,
.smile-enquire-btn.gps-call-box {
    align-self: stretch;
    width: 178px;
    min-height: 92px;
    flex-direction: column;
    gap: 2px;
    border-radius: 0;
    background: var(--gps-orange);
    box-shadow: none;
    font-size: 12px;
    line-height: 1.2;
}

.gps-call-box i {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff;
    color: var(--gps-orange) !important;
    font-size: 15px;
}

.gps-call-box span {
    color: #fff;
    font-weight: 900;
}

.gps-call-box strong {
    color: #fff;
    font-size: 12px;
}

.gps-home {
    padding-top: 142px;
    background: #fff;
    color: var(--gps-text);
}

.gps-wrap {
    width: min(1120px, calc(100% - 36px));
    margin: 0 auto;
}

.gps-hero {
    position: relative;
    overflow: hidden;
    background: #071d38;
}

.gps-hero .gps-wrap {
    width: min(1260px, calc(100% - 56px));
}

.gps-hero-slide {
    position: relative;
    min-height: 620px;
    overflow: hidden;
}

.gps-hero-slide img {
    width: 100%;
    height: 620px;
    display: block;
    object-fit: cover;
    object-position: center;
}

.gps-hero-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    background: linear-gradient(90deg, rgba(4,22,48,.9) 0%, rgba(4,22,48,.76) 33%, rgba(4,22,48,.34) 58%, rgba(4,22,48,.06) 82%);
}

.gps-hero-copy {
    position: relative;
    max-width: 590px;
    padding-left: 24px;
    color: #fff;
}

.gps-hero-copy::before {
    content: "";
    position: absolute;
    left: 0;
    top: 7px;
    width: 5px;
    height: 112px;
    border-radius: 999px;
    background: linear-gradient(180deg, var(--gps-orange), #ffd166);
    box-shadow: 0 14px 30px rgba(255, 100, 37, .28);
}

.gps-hero-copy h1 {
    max-width: 590px;
    margin: 0 0 20px;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 40px;
    line-height: 1.08;
    font-weight: 950;
    text-transform: uppercase;
    text-shadow: 0 5px 22px rgba(0,0,0,.38);
    overflow-wrap: anywhere;
}

.gps-hero-copy h1 span {
    display: block;
    margin-top: 8px;
    color: #ffd166;
    font-family: "Trebuchet MS", "Segoe UI", Arial, sans-serif !important;
    font-size: .8em;
    letter-spacing: 1px !important;
}

.gps-hero-copy p,
.gps-hero-text,
.gps-hero-text p {
    margin: 0 0 24px;
    color: rgba(255,255,255,.92);
    font-size: 16px;
    line-height: 1.75;
    text-shadow: 0 2px 10px rgba(0,0,0,.28);
}

.gps-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.gps-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 20px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.2;
    text-decoration: none;
    white-space: nowrap;
}

.gps-btn:hover,
.gps-btn:focus {
    text-decoration: none;
}

.gps-btn-primary {
    background: var(--gps-orange);
    color: #fff;
    box-shadow: 0 12px 24px rgba(255, 100, 37, .22);
}

.gps-btn-primary:hover {
    color: #fff;
    background: #e84e16;
}

.gps-btn-light {
    border-color: rgba(255,255,255,.72);
    background: rgba(255,255,255,.92);
    color: var(--gps-text);
}

.gps-btn-light:hover {
    color: var(--gps-text);
    background: #fff;
}

.gps-btn-dark {
    background: var(--gps-navy);
    color: #fff;
}

.gps-btn-dark:hover {
    color: #fff;
    background: var(--gps-orange);
}

.gps-btn-outline {
    min-height: 34px;
    border-color: rgba(255,255,255,.7);
    color: #fff;
    background: transparent;
}

.gps-btn-outline:hover {
    color: var(--gps-navy);
    background: #fff;
}

.gps-hero-arrow,
.gps-hero .carousel-control,
.gps-hero .carousel-control-prev,
.gps-hero .carousel-control-next {
    top: 50%;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: -17px;
    border-radius: 50%;
    background: #fff !important;
    color: var(--gps-orange);
    opacity: 1;
    text-shadow: none;
    background-image: none !important;
}

.gps-hero-prev {
    left: 24px;
}

.gps-hero-next {
    right: 24px;
}

.gps-section {
    padding: 46px 0;
}

.gps-heading {
    margin-bottom: 28px;
    text-align: center;
}

.gps-heading span {
    display: block;
    margin-bottom: 6px;
    color: #6d7890;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 5px !important;
}

.gps-heading h2 {
    margin: 0;
    color: var(--gps-text);
    font-size: 29px;
    line-height: 1.2;
    font-weight: 950;
}

.gps-heading h2::after {
    content: "";
    display: block;
    width: 44px;
    height: 3px;
    margin: 14px auto 0;
    border-radius: 999px;
    background: var(--gps-orange);
}

.gps-heading.is-left {
    margin-bottom: 18px;
    text-align: left;
}

.gps-heading.is-left h2::after {
    margin-left: 0;
}

.gps-heading-light span,
.gps-heading-light h2 {
    color: #fff;
}

.gps-facilities {
    padding-top: 28px;
}

.gps-facility-slider {
    position: relative;
    padding: 0 56px;
}

.gps-facility-grid {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 36px) / 3);
    grid-template-columns: none;
    gap: 18px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.gps-facility-grid::-webkit-scrollbar {
    display: none;
}

.gps-facility-grid article {
    position: relative;
    min-height: 258px;
    padding: 12px 12px 20px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 8px;
    background: var(--gps-navy);
    color: #fff;
    box-shadow: 0 14px 34px rgba(6, 40, 91, .1);
    text-align: center;
    scroll-snap-align: start;
}

.gps-facility-grid article > img {
    width: 100%;
    height: 200px;
    display: block;
    object-fit: cover;
    border-radius: 7px;
}

.gps-facility-grid article > i {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: -24px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #edf4ff;
    color: var(--gps-navy);
    box-shadow: 0 8px 18px rgba(6, 40, 91, .16);
}

.gps-facility-grid h3 {
    margin: 13px 0 8px;
    color: #fff;
    font-size: 15px;
    font-weight: 950;
}

.gps-facility-grid p {
    min-height: 58px;
    margin: 0 0 14px;
    color: #fff;
    font-size: 12px;
    line-height: 1.55;
}

.gps-facility-grid a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 30px;
    padding: 0 15px;
    border-radius: 999px;
    background: #fff;
    color: var(--gps-text);
    font-size: 11px;
    font-weight: 900;
    text-decoration: none;
    box-shadow: inset 0 0 0 1px #dce5f0;
}

.gps-facility-grid a i {
    color: var(--gps-orange);
}

.gps-facility-grid .is-featured {
    background: var(--gps-navy);
    color: #fff;
}

.gps-facility-grid .is-featured h3,
.gps-facility-grid .is-featured p {
    color: #fff;
}

.gps-facility-arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 50%;
    background: var(--gps-orange);
    color: #fff;
    box-shadow: 0 12px 24px rgba(255, 100, 37, .28);
    transform: translateY(-50%);
}

.gps-facility-prev {
    left: 0;
}

.gps-facility-next {
    right: 0;
}

.gps-about {
    padding-top: 10px;
}

.gps-about-grid {
    display: grid;
    grid-template-columns: minmax(280px, .9fr) minmax(0, 1.1fr);
    gap: 48px;
    align-items: center;
}

.gps-about-photo {
    position: relative;
}

.gps-about-photo img {
    width: 100%;
    height: 320px;
    display: block;
    object-fit: cover;
    border-radius: 8px;
}

.gps-about-slider,
.gps-about-slider .carousel-inner,
.gps-about-slider .carousel-item {
    border-radius: 8px;
    overflow: hidden;
}

.gps-about-slider .carousel-item img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

.gps-about-slider-control {
    top: 50%;
    width: 38px;
    height: 38px;
    margin: 0 12px;
    border: 0;
    border-radius: 50%;
    background: var(--gps-orange) !important;
    color: #fff;
    opacity: 1;
    transform: translateY(-50%);
    text-shadow: none;
}

.gps-about-slider-control i {
    pointer-events: none;
}

.gps-about-photo strong {
    position: absolute;
    z-index: 3;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 18px 22px;
    border-radius: 8px 0 8px 0;
    background: var(--gps-orange);
    color: #fff;
    font-size: 42px;
    line-height: .9;
    font-weight: 950;
}

.gps-about-photo span {
    color: #fff;
    font-size: 17px;
    line-height: 1.05;
}

.gps-about p {
    margin: 0 0 24px;
    color: #46556e;
    font-size: 14px;
    line-height: 1.8;
}

.gps-about-points {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 22px;
}

.gps-about-points span {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 52px;
    padding: 8px;
    border: 1px solid var(--gps-line);
    border-radius: 8px;
    color: var(--gps-text);
    font-size: 11px;
    font-weight: 900;
    text-align: left;
}

.gps-about-points i {
    color: var(--gps-orange);
}

.gps-news-band {
    padding: 42px 0 36px;
    background: var(--gps-navy);
    color: #fff;
}

.gps-news-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.gps-news-grid article {
    display: grid;
    grid-template-columns: 58px 1fr;
    gap: 16px;
    min-height: 132px;
    padding: 20px;
    border-radius: 9px;
    background: #fff;
    color: var(--gps-text);
    box-shadow: 0 12px 30px rgba(0,0,0,.12);
}

.gps-news-grid time {
    width: 54px;
    height: 66px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: var(--gps-orange);
    color: #fff;
}

.gps-news-grid time strong {
    font-size: 22px;
    line-height: 1;
}

.gps-news-grid time span {
    margin-top: 4px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.gps-news-grid h3 {
    margin: 0 0 8px;
    color: var(--gps-text);
    font-size: 15px;
    font-weight: 950;
}

.gps-news-grid p {
    margin: 0 0 10px;
    color: #526078;
    font-size: 12px;
    line-height: 1.55;
}

.gps-news-grid a {
    color: var(--gps-text);
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}

.gps-news-grid a i {
    color: var(--gps-orange);
}

.gps-center {
    margin-top: 22px;
    text-align: center;
}

.gps-stats {
    padding: 28px 0;
    background: #fff;
}

.gps-stats .gps-wrap {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.gps-stats article {
    display: grid;
    grid-template-columns: 54px 1fr;
    align-items: center;
    column-gap: 12px;
    padding-right: 18px;
    border-right: 1px solid #dfe7f2;
}

.gps-stats article:last-child {
    border-right: 0;
}

.gps-stats i {
    grid-row: span 2;
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #fff4ef;
    color: var(--gps-orange);
    font-size: 23px;
}

.gps-stats strong {
    color: var(--gps-text);
    font-size: 27px;
    line-height: 1;
    font-weight: 950;
}

.gps-stats span {
    color: #526078;
    font-size: 12px;
    font-weight: 700;
}

.gps-purpose {
    padding: 10px 0 44px;
    background: #fff;
}

.gps-purpose-card {
    display: grid;
    grid-template-columns: 1fr 210px 1fr;
    align-items: stretch;
    overflow: hidden;
    border-radius: 14px;
    background: linear-gradient(90deg, var(--gps-navy) 0%, var(--gps-navy) 48%, var(--gps-orange) 52%, var(--gps-orange) 100%);
}

.gps-purpose-panel {
    padding: 34px 36px;
    color: #fff;
}

.gps-purpose-panel i {
    width: 62px;
    height: 62px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    border: 2px solid rgba(255,255,255,.75);
    border-radius: 50%;
    background: var(--gps-orange);
    color: #fff;
    font-size: 28px;
}

.gps-purpose-orange i {
    background: rgba(255,255,255,.16);
}

.gps-purpose-panel h2 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 22px;
    font-weight: 950;
}

.gps-purpose-panel p {
    margin: 0 0 14px;
    color: rgba(255,255,255,.92);
    font-size: 13px;
    line-height: 1.7;
}

.gps-purpose-panel a {
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    text-decoration: none;
}

.gps-purpose-image {
    display: flex;
    align-items: center;
    justify-content: center;
}

.gps-purpose-image img {
    width: 190px;
    height: 190px;
    object-fit: cover;
    border: 10px solid #fff;
    border-radius: 50%;
    box-shadow: 0 14px 32px rgba(0,0,0,.18);
}

.gps-testimonial {
    background: #f7fbff;
}

.gps-testimonial-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
    gap: 48px;
    align-items: center;
}

.gps-testimonial article {
    position: relative;
    width: 100%;
    max-width: 560px;
    min-height: 210px;
    padding: 34px;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 16px 34px rgba(6, 40, 91, .1);
}

.gps-testimonial article > i {
    position: absolute;
    right: 26px;
    top: -28px;
    color: var(--gps-navy);
    font-size: 44px;
}

.gps-testimonial article p {
    margin: 0 0 22px;
    color: #45536d;
    font-size: 15px;
    line-height: 1.75;
}

.gps-testimonial article div {
    display: flex;
    align-items: center;
    gap: 12px;
}

.gps-testimonial article img {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    object-fit: cover;
}

.gps-testimonial strong {
    color: var(--gps-text);
    font-size: 13px;
}

.gps-testimonial strong span {
    display: block;
    color: var(--gps-muted);
    font-size: 11px;
}

.gps-testimonial-grid > img {
    width: 100%;
    height: 248px;
    object-fit: cover;
    border-radius: 10px;
}

.gps-review-slider {
    max-width: 560px;
    padding: 0 58px;
}

.gps-review-slider .carousel-inner {
    overflow: hidden;
    border-radius: 10px;
}

.gps-review-controls {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    pointer-events: none;
}

.gps-review-controls > button {
    width: 42px;
    height: 42px;
    border: 0;
    border-radius: 50%;
    background: var(--gps-orange);
    color: #fff;
    box-shadow: 0 10px 22px rgba(255,100,37,.24);
    pointer-events: auto;
    transform: translateY(-8px);
}

.gps-review-controls .carousel-indicators {
    position: static;
    display: flex;
    gap: 8px;
    margin: 0;
    align-self: flex-end;
    padding-bottom: 2px;
    pointer-events: auto;
}

.gps-review-controls .carousel-indicators button {
    width: 8px;
    height: 8px;
    margin: 0;
    border: 0;
    border-radius: 50%;
    background: #cbd5e5;
    opacity: 1;
}

.gps-review-controls .carousel-indicators button.active {
    width: 22px;
    border-radius: 999px;
    background: var(--gps-navy);
}

.gps-faculty {
    background: #fff;
}

.gps-faculty-tabs {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: -12px 0 24px;
}

.gps-faculty-tabs button {
    min-height: 34px;
    padding: 0 18px;
    border: 1px solid var(--gps-line);
    border-radius: 999px;
    background: #fff;
    color: var(--gps-text);
    font-size: 12px;
    font-weight: 900;
}

.gps-faculty-tabs button.active {
    border-color: var(--gps-orange);
    background: var(--gps-orange);
    color: #fff;
}

.gps-faculty-grid {
    display: none;
    position: relative;
}

.gps-faculty-grid.active {
    display: block;
}

.gps-faculty-track {
    display: grid;
    grid-auto-columns: calc((100% - 72px) / 4);
    grid-auto-flow: column;
    gap: 24px;
    overflow-x: auto;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
}

.gps-faculty-track::-webkit-scrollbar {
    display: none;
}

.gps-faculty-grid article {
    min-height: 210px;
    padding: 20px 18px;
    border: 1px solid var(--gps-line);
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 14px 30px rgba(6, 40, 91, .08);
    scroll-snap-align: start;
    text-align: center;
}

.gps-faculty-grid img {
    width: 104px;
    height: 104px;
    object-fit: cover;
    object-position: top center;
    border-radius: 50%;
    margin-bottom: 12px;
}

.gps-faculty-grid h3 {
    margin: 0 0 4px;
    color: var(--gps-text);
    font-size: 14px;
    font-weight: 950;
}

.gps-faculty-grid p {
    margin: 0 0 7px;
    color: var(--gps-orange);
    font-size: 11px;
    font-weight: 850;
}

.gps-faculty-grid span {
    display: inline-flex;
    max-width: 100%;
    min-height: 22px;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    border-radius: 999px;
    background: #dcebff;
    color: var(--gps-text);
    font-size: 10px;
    font-weight: 900;
}

.gps-empty {
    grid-column: 1 / -1;
    padding: 26px;
    text-align: center;
    color: var(--gps-muted);
}

.gps-faculty-arrow {
    position: absolute;
    top: 50%;
    z-index: 4;
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    background: var(--gps-orange);
    color: #fff;
    box-shadow: 0 14px 28px rgba(3, 27, 67, .2);
    transform: translateY(-50%);
    transition: background .2s ease, transform .2s ease;
}

.gps-faculty-arrow:hover {
    background: var(--gps-navy);
    transform: translateY(-50%) scale(1.06);
}

.gps-faculty-prev {
    left: -18px;
}

.gps-faculty-next {
    right: -18px;
}

.gps-faculty-more {
    margin-top: 28px;
    text-align: center;
}

.gps-admission {
    padding: 0 0 36px;
    background: #fff;
}

.gps-admission .gps-wrap {
    display: grid;
    grid-template-columns: 1fr 450px;
    align-items: center;
    overflow: hidden;
    min-height: 150px;
    padding: 0 0 0 48px;
    border-radius: 14px;
    background: var(--gps-navy);
    color: #fff;
}

.gps-admission span {
    display: block;
    margin-bottom: 6px;
    color: rgba(255,255,255,.78);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 4px !important;
}

.gps-admission h2 {
    margin: 0 0 6px;
    color: #fff;
    font-size: 24px;
    font-weight: 950;
}

.gps-admission p {
    margin: 0 0 16px;
    color: rgba(255,255,255,.9);
    font-size: 13px;
}

.gps-admission img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    align-self: end;
}

.gps-popup-modal {
    z-index: 12000;
}

.gps-popup-modal + .modal-backdrop,
.modal-backdrop.show {
    z-index: 11990;
    background: rgba(4, 17, 41, .74);
    backdrop-filter: blur(3px);
}

.gps-popup-modal .modal-dialog {
    align-items: flex-start;
    max-width: min(92vw, 760px);
    margin-top: clamp(26px, 7vh, 58px);
}

.gps-popup-modal .modal-content {
    overflow: visible;
    border: 0;
    border-radius: 20px;
    background: transparent;
    box-shadow: none;
    animation: gpsPopupRise .28s ease both;
}

.gps-popup-modal .modal-body {
    padding: 0;
    overflow: hidden;
    border: 6px solid #fff;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 30px 80px rgba(3, 27, 67, .36);
}

.gps-popup-link {
    display: block;
    background: #fff;
}

.gps-popup-link img {
    width: 100%;
    max-height: 76vh;
    display: block;
    border-radius: 14px;
    object-fit: contain;
    background: #fff;
}

.gps-popup-close {
    position: absolute;
    right: -16px;
    top: -16px;
    z-index: 5;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    border: 3px solid #fff;
    background-color: var(--gps-orange);
    background-image: none;
    box-shadow: 0 12px 28px rgba(3, 27, 67, .28);
    opacity: 1;
    transition: transform .2s ease, box-shadow .2s ease;
}

.gps-popup-close::before,
.gps-popup-close::after {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 16px;
    height: 2px;
    border-radius: 2px;
    background: #fff;
    content: "";
}

.gps-popup-close::before {
    transform: translate(-50%, -50%) rotate(45deg);
}

.gps-popup-close::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.gps-popup-close:hover {
    transform: rotate(90deg) scale(1.04);
    box-shadow: 0 16px 32px rgba(3, 27, 67, .32);
}

.gps-popup-arrow {
    width: 44px;
    height: 44px;
    top: 50%;
    margin: 0 12px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 10px 24px rgba(3, 27, 67, .18);
    color: #fff;
    opacity: 1;
    transform: translateY(-50%);
}

.gps-popup-arrow i {
    color: var(--gps-orange);
}

.gps-popup-arrow:hover {
    background: var(--gps-orange);
}

.gps-popup-arrow:hover i {
    color: #fff;
}

@keyframes gpsPopupRise {
    from {
        opacity: 0;
        transform: translateY(18px) scale(.98);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (max-width: 575px) {
    .gps-popup-modal .modal-dialog {
        max-width: calc(100vw - 28px);
        margin-left: auto;
        margin-right: auto;
        margin-top: 32px;
    }

    .gps-popup-close {
        right: -8px;
        top: -12px;
        width: 38px;
        height: 38px;
    }

    .gps-popup-arrow {
        width: 34px;
        height: 34px;
        margin: 0 8px;
    }
}

.smile-helpbar {
    display: none;
}

.smile-footer {
    position: relative;
    overflow: hidden;
    padding: 0;
    background: linear-gradient(135deg, #041a38 0%, #05264f 58%, #082f66 100%);
}

.smile-footer-grid {
    position: relative;
    z-index: 2;
    width: min(1500px, calc(100% - 56px));
    max-width: 1500px;
    grid-template-columns: 1.35fr 1.1fr 1.1fr 1.25fr;
    justify-content: center;
    gap: 44px;
    text-align: center;
}

.smile-footer-brand img {
    width: 80px;
    height: 80px;
    border-radius:50%;
    margin-left: auto;
    margin-right: auto;
}

.smile-footer-brand h3 {
    margin-top: 0;
    color: #fff;
    font-size: 24px;
}

.smile-footer-brand p {
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
}

.smile-footer h4 {
    color: #fff;
    font-size: 15px;
    text-align: center;
}

.smile-footer h4::after {
    left: 50%;
    transform: translateX(-50%);
}

.smile-footer a,
.smile-footer p {
    color: rgba(255,255,255,.78);
    font-size: 16px;
    line-height:25px;
    text-align: center;
}

.smile-footer-grid > div:not(.smile-footer-brand) a,
.smile-footer-grid > div:not(.smile-footer-brand) p {
    justify-content: center;
    align-items: center;
}

.smile-footer-grid > div:not(.smile-footer-brand) a i,
.smile-footer-grid > div:not(.smile-footer-brand) p i {
    flex: 0 0 auto;
}

.smile-footer-social {
    justify-content: center;
}

.smile-copyright {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 20px;
    border-top: 1px solid rgba(255,255,255,.16);
    color: rgba(255,255,255,.75);
    text-align: center;
}

.smile-copyright a {
    color: #fff;
    font-weight: 900;
    text-decoration: none;
}

.smile-copyright a:hover {
    color: var(--gps-orange);
}

.smile-credit {
    white-space: nowrap;
}

.smile-credit a {
    display: inline !important;
}

@media (max-width: 767px) {
    .smile-copyright {
        flex-direction: column;
        gap: 6px;
    }
}

@media (max-width: 1180px) {
    .smile-navbar-inner {
        padding-left: 22px;
    }

    .smile-brand {
        flex-basis: 360px;
        padding-right: 42px;
    }

    .smile-brand-copy strong,
    .smile-brand-copy b {
        font-size: 22px;
    }

    .gps-facility-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .smile-footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: calc(100% - 40px);
    }

    .smile-footer-brand {
        grid-column: 1 / -1;
    }
}

@media (max-width: 1100px) {
    .smile-navbar {
        top: 50px;
    }

    .smile-navbar-inner {
        padding: 0 18px;
        min-height: 82px;
    }

    .smile-brand {
        flex: 1 1 auto;
        min-height: 82px;
        border-radius: 0;
        background: transparent;
        padding: 8px 0;
    }

    .smile-brand::before {
        display: none;
    }

    .smile-brand-copy strong {
        color: #fff;
    }

    .smile-brand-copy b,
    .smile-brand-copy small {
        color: #fff;
    }

    .smile-menu-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: var(--gps-orange);
    }

    .smile-nav-links {
        position: absolute;
        top: 82px;
        left: 0;
        right: 0;
        display: none;
        padding: 10px 18px 18px;
        background: var(--gps-navy);
    }

    .smile-nav-links.is-open {
        display: block;
    }

    .smile-nav-links > .ints-ul {
        display: block;
    }

    .smile-nav-links .ints-ul a {
        padding: 12px 4px;
    }

    .smile-nav-links .ints-ul ul {
        position: static;
        display: none;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
    }

    .smile-nav-links .is-submenu-open > ul {
        display: block;
    }

    .gps-call-box {
        display: none !important;
    }

    .gps-home {
        padding-top: 132px;
    }
}

@media (max-width: 900px) {
    .gps-hero-slide,
    .gps-hero-slide img {
        min-height: 540px;
        height: 540px;
    }

    .gps-hero-copy {
        max-width: 520px;
    }

    .gps-hero-copy h1 {
        font-size: 42px;
    }

    .gps-facility-grid,
    .gps-news-grid,
    .gps-stats .gps-wrap {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gps-faculty-track {
        grid-auto-columns: calc((100% - 24px) / 2);
    }

    .gps-about-grid,
    .gps-testimonial-grid,
    .gps-admission .gps-wrap {
        grid-template-columns: 1fr;
    }

    .gps-about-slider .carousel-item img {
        height: 360px;
    }

    .gps-about-points {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gps-purpose-card {
        grid-template-columns: 1fr;
        background: var(--gps-navy);
    }

    .gps-purpose-orange {
        background: var(--gps-orange);
    }

    .gps-admission .gps-wrap {
        padding: 28px;
    }
}

@media (max-width: 640px) {
    .smile-brand img {
        width: 48px;
        height: 48px;
    }

    .smile-brand-copy strong,
    .smile-brand-copy b {
        font-size: 17px;
    }

    .smile-brand-copy small {
        font-size: 9px;
    }

    .gps-hero-slide,
    .gps-hero-slide img {
        min-height: 560px;
        height: 560px;
    }

    .gps-hero-overlay {
        align-items: flex-end;
        padding-bottom: 34px;
        background: linear-gradient(180deg, rgba(4,22,48,.04) 0%, rgba(4,22,48,.62) 42%, rgba(4,22,48,.95) 100%);
    }

    .gps-hero .gps-wrap {
        width: min(100% - 34px, 1260px);
    }

    .gps-hero-copy {
        max-width: 100%;
        padding-left: 18px;
    }

    .gps-hero-copy::before {
        top: 5px;
        height: 92px;
    }

    .gps-hero-copy h1 {
        font-size: 32px;
    }

    .gps-hero-copy p,
    .gps-hero-text,
    .gps-hero-text p {
        font-size: 14px;
    }

    .gps-facility-grid,
    .gps-news-grid,
    .gps-stats .gps-wrap,
    .smile-footer-grid {
        grid-template-columns: 1fr;
    }

    .gps-faculty-track {
        grid-auto-columns: 100%;
    }

    .gps-faculty-prev {
        left: -10px;
    }

    .gps-faculty-next {
        right: -10px;
    }

    .gps-stats article {
        border-right: 0;
        border-bottom: 1px solid #dfe7f2;
        padding-bottom: 16px;
    }

    .gps-about-points {
        grid-template-columns: 1fr;
    }

    .gps-about-slider .carousel-item img {
        height: 280px;
    }

    .gps-about-slider-control {
        width: 34px;
        height: 34px;
        margin: 0 8px;
    }

    .gps-heading h2 {
        font-size: 24px;
    }

    .gps-news-grid article {
        grid-template-columns: 1fr;
    }

    .gps-purpose-panel {
        padding: 26px 22px;
    }
}

/* Responsive header container sizing */
.smile-topbar .smile-container,
.smile-navbar-inner.container-fluid {
    width: min(100%, 1720px);
    max-width: 1720px;
    margin-left: auto;
    margin-right: auto;
}

.smile-navbar-inner.container-fluid {
    padding-left: clamp(22px, 3vw, 54px);
    padding-right: clamp(22px, 3vw, 54px);
}

.smile-brand {
    flex-basis: clamp(330px, 24vw, 430px);
}

.smile-nav-links {
    min-width: 0;
}

.smile-nav-links > .ints-ul {
    justify-content: flex-end;
    gap: clamp(0px, .25vw, 14px);
}

.smile-nav-links .ints-ul a {
    font-size: clamp(12px, .82vw, 15px);
    padding-left: clamp(7px, .55vw, 12px);
    padding-right: clamp(7px, .55vw, 12px);
}

.smile-nav-links > .ints-ul > li > a {
    display: inline-flex;
    align-items: center;
    min-height: 92px;
    padding-top: 0;
    padding-bottom: 0;
}

.smile-nav-links > .ints-ul > li > a.active-menu::after,
.smile-nav-links > .ints-ul > li > a:hover::after {
    bottom: 26px;
}

@media (max-width: 1360px) {
    .smile-navbar-inner.container-fluid {
        padding-left: 22px;
        padding-right: 22px;
    }

    .smile-brand {
        flex-basis: 330px;
        padding-right: 34px;
    }

    .smile-nav-links .ints-ul a {
        font-size: 12px;
        padding-left: 6px;
        padding-right: 6px;
    }
}

@media (max-width: 1180px) {
    .smile-navbar-inner.container-fluid {
        padding-left: 18px;
        padding-right: 18px;
    }

    .smile-brand {
        flex-basis: 300px;
        padding-right: 24px;
    }

    .smile-brand-copy strong,
    .smile-brand-copy b {
        font-size: 20px;
    }

    .smile-brand-copy small {
        font-size: 9px;
    }
}

@media (max-width: 1100px) {
    .smile-navbar-inner.container-fluid {
        width: 100%;
        max-width: none;
        padding-left: 16px;
        padding-right: 16px;
    }

    .smile-brand {
        flex: 1 1 auto;
        min-width: 0;
        padding-right: 0;
    }

    .smile-nav-links {
        left: 0;
        right: 0;
        width: 100%;
    }

    .smile-nav-links > .ints-ul > li > a {
        display: flex;
        min-height: 0;
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .smile-nav-links > .ints-ul > li > a.active-menu::after,
    .smile-nav-links > .ints-ul > li > a:hover::after {
        display: none;
    }
}

@media (max-width: 640px) {
    .smile-navbar-inner.container-fluid {
        padding-left: 12px;
        padding-right: 12px;
    }

    .smile-brand {
        gap: 8px;
    }
}

/* Header logo sizing */
.smile-brand img {
    width: 78px;
    height: 78px;
}

@media (max-width: 1100px) {
    .smile-brand img {
        width: 68px;
        height: 68px;
    }
}

@media (max-width: 640px) {
    .smile-brand img {
        width: 58px;
        height: 58px;
    }
}

/* Top header polish */
.smile-topbar {
    background: #ff6425;
    box-shadow: 0 8px 22px rgba(255, 100, 37, .24);
    transition: transform .25s ease, opacity .25s ease, visibility .25s ease;
}

.smile-topbar .smile-container {
    width: min(100%, 1720px);
    max-width: 1720px;
    padding-left: clamp(22px, 3vw, 54px);
    padding-right: clamp(22px, 3vw, 54px);
}

.smile-topbar-inner {
    min-height: 52px;
    gap: 22px;
}

.smile-contact-strip {
    gap: 22px;
}

.smile-topbar .smile-contact-strip a,
.smile-topbar .smile-contact-strip span {
    color: #fff;
    font-size: 14px;
    line-height: 1.2;
}

.smile-topbar .smile-contact-strip i,
.smile-topbar .smile-social a {
    border: 1px solid rgba(255,255,255,.55);
    box-shadow: 0 6px 16px rgba(8, 41, 78, .18);
}

.smile-topbar .smile-contact-strip i {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 28px;
    border-radius: 50%;
    background: #fff;
    color: #05264f;
    font-size: 12px;
}

.smile-topbar .smile-social {
    gap: 10px;
}

.smile-topbar .smile-social a {
    width: 28px;
    height: 28px;
    color: #fff !important;
}

.smile-topbar .smile-social .social-facebook {
    background: #1877f2 !important;
}

.smile-topbar .smile-social .social-twitter {
    background: #1da1f2 !important;
}

.smile-topbar .smile-social .social-instagram {
    background: linear-gradient(135deg, #f58529 0%, #dd2a7b 45%, #8134af 72%, #515bd4 100%) !important;
}

.smile-topbar .smile-social .social-youtube {
    background: #ff0000 !important;
}

.smile-navbar {
    top: 52px;
    transition: top .25s ease, box-shadow .25s ease;
}

.gps-home {
    padding-top: 144px;
}

.smile-header + .aboutus-page {
    margin-top: 144px;
}

.is-header-condensed .smile-topbar {
    transform: translateY(-100%);
    opacity: 0;
    visibility: hidden;
}

.is-header-condensed .smile-navbar {
    top: 0;
    box-shadow: 0 12px 30px rgba(3, 27, 67, .2);
}

@media (max-width: 860px) {
    .smile-topbar .smile-container {
        padding-left: 14px;
        padding-right: 14px;
    }

    .smile-topbar-inner {
        min-height: 58px;
    }

    .smile-navbar {
        top: 58px;
    }

    .gps-home {
        padding-top: 140px;
    }

    .smile-header + .aboutus-page {
        margin-top: 140px;
    }

    .is-header-condensed .smile-navbar {
        top: 0;
    }

    .smile-contact-strip {
        gap: 12px;
    }

    .smile-topbar .smile-contact-strip a,
    .smile-topbar .smile-contact-strip span {
        font-size: 12px;
    }
}

/* Facility slider final responsive rules */
.gps-facility-slider .gps-facility-grid {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 36px) / 3);
    grid-template-columns: none !important;
}

@media (max-width: 900px) {
    .gps-facility-slider {
        padding: 0 48px;
    }

    .gps-facility-slider .gps-facility-grid {
        grid-auto-columns: calc((100% - 18px) / 2);
    }
}

@media (max-width: 640px) {
    .gps-facility-slider {
        padding: 0 42px;
    }

    .gps-facility-slider .gps-facility-grid {
        grid-auto-columns: 100%;
    }

    .gps-facility-arrow {
        width: 36px;
        height: 36px;
    }
}

/* Home section spacing */
.gps-section {
    padding-top: 70px;
    padding-bottom: 70px;
}

.gps-facilities {
    padding-top: 58px;
    padding-bottom: 70px;
}

.gps-about {
    padding-top: 70px;
    padding-bottom: 74px;
}

.gps-news-band {
    padding-top: 70px;
    padding-bottom: 66px;
}

.gps-stats {
    padding-top: 46px;
    padding-bottom: 46px;
}

.gps-purpose {
    padding-top: 58px;
    padding-bottom: 74px;
}

.gps-testimonial {
    padding-top: 74px;
    padding-bottom: 74px;
}

.gps-faculty {
    padding-top: 74px;
    padding-bottom: 74px;
}

.gps-admission {
    padding-top: 56px;
    padding-bottom: 64px;
}

@media (min-width: 901px) {
    .gps-home .gps-facility-grid p,
    .gps-home .gps-about p,
    .gps-home .gps-news-grid p,
    .gps-home .gps-purpose-panel p,
    .gps-home .gps-testimonial article p,
    .gps-home .gps-admission p {
        font-size: 16px;
    }
}

@media (max-width: 640px) {
    .gps-section,
    .gps-about,
    .gps-testimonial,
    .gps-faculty {
        padding-top: 54px;
        padding-bottom: 54px;
    }

    .gps-facilities,
    .gps-news-band,
    .gps-purpose,
    .gps-admission {
        padding-top: 50px;
        padding-bottom: 54px;
    }
}

/* Larger centered section containers */
.gps-wrap {
    width: min(1320px, calc(100% - 44px));
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
}

.gps-hero .gps-wrap {
    width: min(1380px, calc(100% - 56px));
    max-width: 1380px;
}

.smile-footer-grid,
.smile-helpbar-inner {
    width: min(1500px, calc(100% - 56px));
    max-width: 1500px;
    margin-left: auto;
    margin-right: auto;
}

.gps-purpose-card,
.gps-admission .gps-wrap {
    width: min(1320px, calc(100% - 44px));
    max-width: 1320px;
}

.gps-admission .gps-wrap {
    padding-left: clamp(28px, 3vw, 48px);
    padding-right: 0;
}

@media (max-width: 1100px) {
    .gps-wrap,
    .gps-hero .gps-wrap,
    .smile-footer-grid,
    .smile-helpbar-inner {
        width: calc(100% - 36px);
    }

    .gps-purpose-card,
    .gps-admission .gps-wrap {
        width: calc(100% - 36px);
    }
}

@media (max-width: 640px) {
    .gps-wrap,
    .gps-hero .gps-wrap,
    .smile-footer-grid,
    .smile-helpbar-inner {
        width: calc(100% - 28px);
    }

    .gps-purpose-card,
    .gps-admission .gps-wrap {
        width: calc(100% - 28px);
    }

    .gps-admission .gps-wrap {
        padding-left: 22px;
        padding-right: 22px;
    }

    .gps-about .gps-btn-dark,
    .gps-admission .gps-btn-primary {
        display: inline-flex;
        margin-left: auto;
        margin-right: auto;
        margin-bottom:20px; 
    }

    .gps-about > .gps-wrap > div:last-child,
    .gps-admission .gps-wrap > div:first-child {
        text-align: center;
    }

    .gps-admission .gps-btn-primary {
        min-height: 46px;
        padding: 0 28px;
    }
}

/* Final footer alignment */
.smile-footer-grid > div {
    text-align: left;
}

.smile-footer h4 {
    text-align: left;
}

.smile-footer h4::after {
    left: 0;
    transform: none;
}

.smile-footer-grid > div:not(.smile-footer-brand) a,
.smile-footer-grid > div:not(.smile-footer-brand) p {
    display: flex;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    justify-content: flex-start;
    align-items: center;
    text-align: left;
}

.smile-footer-grid > div:not(.smile-footer-brand) a i,
.smile-footer-grid > div:not(.smile-footer-brand) p i {
    margin-top: 0;
}

.smile-footer-brand {
    text-align: center;
}

.smile-footer-brand img,
.smile-footer-brand p {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.smile-footer-social {
    justify-content: center;
}
