:root {
    --primary-blue: #00071C;
    --secondary-blue: #002d56;
    --light-blue: #E8F4FF;
    --beige: #FFF6BC;
    --yellow: #F9D600;
    --red: #FF0011;
    --coffee: #836A49;
    --white: #FFFFFF;
    --black: #000000;
    --text-primary: #00071c;
    --text-secondary: #606677;
    --text-light: #98999b;
    --text-white: #FFFFFF;
    --fs-2xs: 10px;
    --fs-xs: 12px;
    --fs-sm: 14px;
    --fs-base: 16px;
    --fs-md: 18px;
    --fs-lg: 20px;
    --fs-xl: 24px;
    --fs-2xl: 32px;
    --fs-3xl: 36px;
    --fs-4xl: 46px;
    --fs-5xl: 56px;
    --fs-6xl: 64px;
    --fs-7xl: 72px;
    --fs-8xl: 80px;
    --fs-9xl: 96px;
    --fs-10xl: 120px;
    --fw-light: 300;
    --fw-normal: 400;
    --fw-medium: 500;
    --fw-semibold: 600;
    --fw-bold: 700;
    --radius-sm: 5px;
    --radius-md: 10px;
    --radius-lg: 20px;
    --transition: all .3s ease;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}
body {
    font-family: "Pliant", sans-serif !important;
    font-size: var(--fs-base);
    font-weight: 400;
    line-height: 1.5;
    color: var(--black);
    background-color: var(--white);
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
h1 {
    font-size: var(--fs-3xl);
    font-weight: 700;
    line-height: 1.2;
}

h2 {
    font-size: var(--fs-2xl);
    font-weight: 700;
    line-height: 1.25;
}

h3 {
    font-size: var(--fs-xl);
    font-weight: 600;
    line-height: 1.3;
}

h4 {
    font-size: var(--fs-lg);
    font-weight: 600;
    line-height: 1.35;
}

h5 {
    font-size: var(--fs-md);
    font-weight: 600;
    line-height: 1.4;
}

h6 {
    font-size: var(--fs-base);
    font-weight: 600;
    line-height: 1.5;
}

p {
    font-size: var(--fs-base);
    line-height: 1.8;
}

small {
    font-size: var(--fs-sm);
}
p {
    margin: 0 0 1rem;
    font-size: var(--fs-base);
    line-height: 1.5;
    color: var(--text-secondary);
}
ul,
ol {
    margin: 0 0 1.5rem;
    padding-left: 1.5rem;
}
ul li,
ol li {
    font-size: var(--fs-base);
    line-height: 1.5;
    margin-bottom: 0.5rem;
    color: var(--text-secondary);
}
ul ul,
ol ol,
ul ol,
ol ul {
    margin-top: 0.5rem;
    margin-bottom: 0;
}
a {
    text-decoration: none;
    transition: var(--transition);
}
a:hover {
    color: var(--secondary-blue);
}
.nap_container {
    position: static;
    max-width: 1220px;
    padding: 0px 15px;
    margin: 0 auto;
}
.nap_header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    transition:
        transform .4s ease,
        background .4s ease,
        box-shadow .4s ease;
}
.nap_hide {
    transform: translateY(-100%);
}
.nap_scrolled {
    background:
        rgba(10, 15, 30, .92);
    backdrop-filter:
        blur(18px);
    box-shadow:
        0 10px 30px rgba(0, 0, 0, .15);
}
.nap_header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 180px;
    background:
        linear-gradient(180deg,
            rgba(0, 0, 0, .75),
            rgba(0, 0, 0, 0));
    pointer-events: none;
    transition: .4s;

}
.nap_scrolled {
    background:
        rgba(8, 12, 25, .82);
    backdrop-filter: blur(18px);
    box-shadow:
        0 10px 30px rgba(0, 0, 0, .15);
}
.nap_scrolled::before {
    opacity: 0;
}
.nap_hide {
    transform:
        translateY(-100%);

}
.nap_navbar {
    padding: 25px 0;
    transition: .4s;
}
.nap_brand {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
}
.nap_brand img {
    width: 110px;
}
.nap_brand h5 {
    margin: 0;
    font-size: var(--fs-xl);
    font-weight: var(--fw-normal);
    line-height: 1.1;
    color: var(--white);
    margin-bottom: -10px;
}
.nap_brand span {
    font-size: var(--fs-sm);
    color: var(--white);
    letter-spacing: normal;
    text-transform: capitalize;
    font-family: "Dancing Script", cursive;
    font-weight: var(--fw-light);
}
.nap_top_links {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    margin-bottom: 12px;
}
.nap_top_links a {
    color: var(--beige);
    text-decoration: none;
    font-size: var(--fs-sm);
    font-weight: var(--fw-normal);
    text-transform: capitalize;
}
.nap_top_links span {
    color: var(--light-blue);
}
.nap_menu {
    gap: 8px;
}
.nap_menu .nav-link {
    color: var(--white);
    font-size: var(--fs-md);
    font-weight: var(--fw-normal);
    padding: 10px 18px;
    position: relative;
    transition: .35s;
    text-transform: capitalize;
}
.dropdown-menu {
    border: none;
    border-radius: 16px;
    padding: 12px 0;
    box-shadow:
        0 20px 50px rgba(0, 0, 0, .12);
    overflow: hidden;

}
.dropdown-item {
    position: relative;
    padding: 10px 22px;
    font-size: 14px;
    font-weight: 500;
    color: var(--text-primary);
    transition: all .35s ease;
}
.dropdown-item::before {
    content: "";
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%) scaleY(0);
    width: 3px;
    height: 18px;
    background: var(--primary-blue);
    border-radius: 10px;
    transition: all .35s ease;
}
.dropdown-item:hover {
    color: var(--primary-blue);
    padding-left: 32px;
    background: rgba(0, 123, 255, .05);
}
.dropdown-item:hover::before {
    transform: translateY(-50%) scaleY(1);
}
.nap_scrolled {
    background: rgba(10, 18, 35, 0.68);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(255, 255, 255, .12);
    box-shadow:
        0 10px 40px rgba(0, 0, 0, .18),
        inset 0 1px 0 rgba(255, 255, 255, .08);
    transition: all .4s ease;
}
.nap_toggler {
    width: 45px;
    height: 45px;
    border: none !important;
    background: transparent;
    position: relative;
    display: none;
}
.nap_toggler:focus,
.nap_toggler:active,
.btn-close-white:focus,
.btn-close-white:active {
    box-shadow: none !important;
}
.nap_toggler span {
    position: absolute;
    left: 8px;
    width: 28px;
    height: 2px;
    background: var(--white);
    transition: .4s ease;
}
.nap_toggler span:nth-child(1) {
    top: 13px;
}
.nap_toggler span:nth-child(2) {
    top: 21px;
}
.nap_toggler span:nth-child(3) {
    top: 29px;
}
.nap_toggler.active span:nth-child(1) {
    top: 21px;
    transform: rotate(45deg);
}
.nap_toggler.active span:nth-child(2) {
    opacity: 0;
}
.nap_offcanvas {
    width: min(85vw, 380px);
    background: var(--primary-blue) !important;
    backdrop-filter: blur(25px);
    color: var(--white);
    z-index: 9999;
}
.offcanvas-backdrop.show {
    background:
        rgba(0, 0, 0, .35);
    backdrop-filter: blur(5px);
}
.nap_mobile_logo {
    display: flex;
    align-items: center;
    gap: 12px;
}
.nap_mobile_logo img {
    width: 70px;
}
.nap_mobile_logo h5 {
    margin: 0;
    font-size: var(--fs-sm);
    color: var(--white);
    font-weight: var(--fw-lightl);
    margin-bottom: -10px;
}
.nap_mobile_logo span {
    font-size: 6px;
    color: var(--white);
    font-family: "Dancing Script", cursive;
}
.nap_mobile_links {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom:
        1px solid rgba(255, 255, 255, .1);

}
.nap_mobile_links a {
    display: block;
    color: #ddd;
    text-decoration: none;
    padding: 8px 0;
    font-size: 14px;
    text-transform: capitalize;
}
.nap_mobile_menu {
    list-style: none;
    padding: 0;
    margin: 0;
}
.nap_mobile_menu li {
    border-bottom:
        1px solid rgba(255, 255, 255, .08);

}
.nap_mobile_menu>li>a {
    display: block;
    padding: 16px 0;
    text-decoration: none;
    color: var(--white);
    font-weight: 600;
    transition: .35s;
}
.nap_mobile_menu>li>a:hover {
    padding-left: 12px;
}
.nap_mobile_menu .collapse a {
    display: block;
    padding: 12px 0 12px 20px;
    color: #cfcfcf;
    text-decoration: none;
    font-size: 14px;
}
.nap_admission_box {
    margin-top: 25px;
}
.nap_admission_btn {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50px;
    border-radius: 50px;
    background: var(--white);
    color: #111827;
    font-weight: 700;
    text-decoration: none;
}
.nap_mobile_menu a,
.nap_mobile_menu a:hover,
.nap_mobile_menu a:focus,
.nap_mobile_menu a:active {
    color: var(--white);
    text-decoration: none;
    outline: none;
    box-shadow: none;
}
.nap_mobile_menu a:focus-visible {
    outline: none;
    box-shadow: none;
}
.nap_mobile_menu a {
    -webkit-tap-highlight-color: transparent;
}
.nav-link:focus,
.nav-link:hover {
    color: var(--white) !important;
}
.nap_hero {
    position: relative;
    height: 100vh;
    overflow: hidden;
}
.napHeroSwiper,
.swiper-slide {
    height: 100vh;
}
.nap_slide_bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    transform: scale(1);
    transition: transform 7s ease;
}
.swiper-slide-active .nap_slide_bg {
    transform: scale(1.12);
}
.nap_overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
}
.nap_slide_content {
    position: relative;
    z-index: 5;
    color: var(--white);
    max-width: 420px;
    padding-top: 240px;
    opacity: 0;
    transform: translateY(40px);
    transition: all .8s ease;
}
.swiper-slide-active .nap_slide_content {
    opacity: 1;
    transform: translateY(0);
}
.nap_slide_content h5 {
    font-size: var(--fs-3xl);
    font-weight: 300;
    margin-bottom: 10px;
    font-family: "Dancing Script", cursive;
}
.nap_slide_content h1 {
    font-size: var(--fs-8xl);
    font-weight: var(--fw-light) !important;
    line-height: 1;
    margin-bottom: 20px;
    font-family: "Nyght Serif Light";

}
.nap_slide_content p {
    font-size: var(--fs-base);
    line-height: 1.5;
    margin-bottom: 30px;
    color: var(--white);
}
.swiper-pagination {
    bottom: 20px !important;
}

.swiper-pagination-bullet {
    width: 35px !important;
    height: 2px !important;
    border-radius: 0 !important;
    background: rgba(255, 255, 255, .3) !important;
    opacity: 1 !important;
    margin: 0 5px !important;
    transition: .5s ease;
}

.swiper-pagination-bullet-active {
    width: 80px !important;
    background: var(--white) !important;
    box-shadow: 0 0 10px rgba(255, 255, 255, .5);
}
.nap_notice_wrap {
    position: absolute;
    right: 60px;
    bottom: 110px;
    width: 505px;
    display: flex;
    background: var(--white);
    overflow: hidden;
    z-index: 20;
    box-shadow:
        0 15px 40px rgba(0, 0, 0, .15);
}
.nap_notice_label {
    background: var(--primary-blue);
    color: var(--white);
    padding: 12px 24px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: var(--fw-medium);
    font-family: "Nyght Serif Light";
}
.nap_notice_label span {
    width: 10px;
    height: 10px;
    background: var(--red);
    border-radius: 50%;
    animation: pulse 1s infinite;
}
@keyframes pulse {

    50% {
        transform: scale(1.4);
    }

}
.nap_ticker {
    overflow: hidden;
    white-space: nowrap;
    flex: 1;
    display: flex;
    align-items: center;

}
.nap_ticker_track {
    display: inline-block;
    padding-left: 100%;
    animation:
        ticker 18s linear infinite;

}
.nap_ticker:hover .nap_ticker_track {
    animation-play-state: paused;
}
@keyframes ticker {

    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }

}
.nap_scroll_wrap {
    position: absolute;
    left: 50%;
    bottom: 60px;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    z-index: 10;

}
.nap_scroll_mouse {
    width: 32px;
    height: 32px;
    border: 2px solid var(--white);
    border-radius: 30px;
    display: flex;
    justify-content: center;
    padding-top: 8px;
}
.nap_scroll_wheel {
    width: 4px;
    height: 10px;
    background: var(--white);
    border-radius: 10px;
    animation: napWheel 1.8s infinite;
}

@keyframes napWheel {

    0% {
        opacity: 1;
        transform: translateY(0);
    }

    100% {
        opacity: 0;
        transform: translateY(18px);
    }

}
.nap_scroll_text {
    color: var(--white);
    font-size: var(--fs-sm);
    font-weight: var(--fw-normal);
    letter-spacing: normal;
    text-transform: capitalize;
    animation: napTextFloat 2s infinite;
}
@keyframes napTextFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(5px);
    }

}
.nap_scroll_wrap:hover {
    transform:
        translateX(-50%) translateY(5px);

}
#about {
    padding: 100px 0;
}
.nap_menu .nav-link.active {
    color: var(--white);
}
.nap_menu .nav-link.active::after {
    width: 60%;
}
.nap_brand {
    transition: .35s;
}
.nap_brand_small img {
    width: 80px;
}
.nap_brand_small h5 {
    font-size: 20px;
}
.nap_brand_small span {
    font-size: 10px;
}
.nap_reveal {
    opacity: 0;
    transform: translateY(50px);
    transition: .8s ease;
}
.nap_show {
    opacity: 1;
    transform: translateY(0);
}
.nap_about_section {
    position: relative;
    background: var(--light-blue);
    padding: 100px 0;
    overflow: hidden;
    scroll-margin-top: 0px;
    /* adjust to your header height */
}
.nap_about_left {
    position: relative;
    z-index: 2;
}
.nap_subtitle {
    display: block;
    font-family: "Dancing Script", cursive;
    font-weight: var(--fw-light);
    font-size: var(--fs-3xl);
    color: #111827;
    line-height: 1;
}
.nap_title {
    font-family: "Nyght Serif Light";
    font-size: var(--fs-5xl);
    font-weight: 400;
    line-height: 0.95;
    margin: 12px 0 24px;
    color: var(--primary-blue);
}
.nap_title_sub {
    font-family: "Nyght Serif Light";
    font-size: var(--fs-3xl);
    font-weight: 400;
    line-height: 0.95;
    margin: 12px 0 14px;
    color: var(--primary-blue);
}
.nap_about_left p {
    color: var(--text-secondary);
    margin-bottom: 22px;
}
.nap_about_logo {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.nap_about_logo img {
    width: 100%;
    max-width: 520px;
    opacity: .12;
    animation: napFloat 8s ease-in-out infinite;
}

@keyframes napFloat {

    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-10px);
    }

    100% {
        transform: translateY(0px);
    }
}
.nap_about_right {
    position: relative;
    z-index: 2;
}
.nap_info_block {
    margin-bottom: 50px;
}
.nap_features {
    display: flex;
    justify-content: space-between;
    gap: 22px;
    margin-top: 24px;
}
.nap_feature {
    flex: 1;
    text-align: center;
}
.nap_feature_icon {
    width: 28px;
    height: 28px;
    object-fit: contain;
    margin-bottom: 15px;
    transition: all .4s ease;
}
.nap_feature:hover .nap_feature_icon {
    transform: translateY(-5px) scale(1.08);
}
.nap_feature span {
    display: block;
    font-size: 12px;
    color: var(--text-secondary);
    font-weight: var(--fw-normal);
}
.nap_learning_section {
    padding: 108px 0;
    overflow: hidden;
}
.nap_stat_card {
    position: relative;
    height: 240px;
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    transition: .5s ease;
    isolation: isolate;
    -webkit-border-radius: 12px;
    -moz-border-radius: 12px;
    -ms-border-radius: 12px;
    -o-border-radius: 12px;
}
.nap_stat_image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 1s ease;
}
.nap_overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top,
            rgba(0, 0, 0, .65),
            rgba(0, 0, 0, .05));
    z-index: 1;
}
.nap_card_content {
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 14px;
    z-index: 3;
    color: var(--white);
}
.nap_card_content h3 {
    font-size: var(--fs-2xl);
    font-weight: var(--fw-bold);
    margin-bottom: 0;
}
.nap_card_content p {
    margin-bottom: 0;
    color: var(--white);
}
.nap_hash {
    display: block;
    margin-top: 8px;
    font-size: var(--fs-base);
    font-style: italic;
    color: var(--text-light);
}
.nap_stat_card::before {
    content: "";
    position: absolute;
    top: -100%;
    left: -100%;
    width: 200%;
    height: 200%;
    background:
        linear-gradient(135deg,
            rgba(255, 255, 255, .35),
            transparent);
    opacity: 0;
    transition: .7s;
    z-index: 2;
}
.nap_stat_card:hover::before {
    opacity: 1;
    top: -20%;
    left: -20%;
}
.nap_stat_card:hover {
    transform:
        translateY(-12px) scale(1.03);

    box-shadow:
        0 25px 50px rgba(0, 0, 0, .18);
}
.nap_stat_card:hover .nap_stat_image {
    transform: scale(1.12);
}
.nap_stat_card:hover .nap_card_content {
    transform: translateY(-10px);
}
.nap_card_content {
    transition: .4s ease;
}
.nap_stat_card {
    animation:
        napFloat 6s ease-in-out infinite;
}
@keyframes napFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-6px);
    }

}
.col-lg-2:nth-child(2) .nap_stat_card {
    animation-delay: .5s;
}
.col-lg-2:nth-child(3) .nap_stat_card {
    animation-delay: 1s;
}
.col-lg-2:nth-child(4) .nap_stat_card {
    animation-delay: 1.5s;
}
.col-lg-2:nth-child(5) .nap_stat_card {
    animation-delay: 2s;
}
.col-lg-2:nth-child(6) .nap_stat_card {
    animation-delay: 2.5s;
}
.nap_news {
    position: relative;
    padding: 100px 0 140px;
    background: var(--yellow);
}
.nap_news_slider_wrap {
    position: relative;
    overflow: hidden;
    margin-top: 40px;
}
.napNewsSwiper {
    overflow: visible;
}
.napNewsSwiper .swiper-wrapper {
    align-items: center;
}
.napNewsSwiper .swiper-slide {
    width: 520px;
    height: auto;
}
.nap_news_card {
    display: flex;
    align-items: center;
    gap: 22px;
    background: transparent;
    transition: .45s ease;
}
.nap_news_image {
    position: relative;
    width: 200px;
    min-width: 200px;
    height: 180px;
    overflow: hidden;
    border-radius: 18px;
    flex-shrink: 0;
    background: var(--white);
    box-shadow:
        0 12px 30px rgba(0, 0, 0, .12);
}
.nap_news_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:
        transform .7s ease,
        filter .5s ease;
}
.nap_news_content {
    flex: 1;
}
.nap_news_meta {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    font-size: 15px;
    color: #111;
}
.nap_news_meta span:first-child {
    font-weight: 600;
}
.nap_news_content h4 {
    font-size: var(--fs-xl);
    font-weight: var(--fw-normal);
    line-height: 1.3;
    color: #000;
    margin-bottom: 26px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.nap_news_btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    font-size: var(--fs-base);
    font-weight: var(--fw-normal);
    color: var(--text-primary);
    transition: .35s;
}
.nap_news_btn svg {
    transition: .35s;
}
.nap_news_btn:hover {
    color: #081226;
}
.napNewsSwiper .swiper-slide {
    padding: 15px 10px;
}
.nap_news_card {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    transition:
        transform .45s ease,
        box-shadow .45s ease;
}
.nap_news_card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 22px;
    /* background: linear-gradient(135deg,
            rgba(255, 255, 255, .18),
            rgba(255, 255, 255, 0)); */
    opacity: 0;
    transition: .45s;
    pointer-events: none;
}
.nap_news_card:hover {
    transform: translateY(-12px);
}
.nap_news_card:hover::before {
    opacity: 1;
}
.nap_news_image {
    position: relative;
}
.nap_news_image::before {
    content: "";
    position: absolute;
    inset: 0;
    /* background: linear-gradient(180deg,
            rgba(0, 0, 0, 0),
            rgba(0, 0, 0, .35)); */
    opacity: 0;
    transition: .45s;
    z-index: 1;
}
.nap_news_card:hover .nap_news_image::before {
    opacity: 1;
}
.nap_news_card:hover .nap_news_image img {
    transform: scale(1.12);
    filter: brightness(1.05);
}
.nap_news_content h4 {
    transition: .35s;
}
.nap_news_card:hover h4 {
    color: #081226;
}
.nap_news_btn {
    position: relative;
}
.nap_news_btn::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 2px;
    background: #081226;
    transition: .35s;
}
.nap_news_card:hover .nap_news_btn::after {
    width: 100%;
}
.nap_news_btn svg {
    transition:
        transform .35s ease,
        color .35s ease;
}
.nap_news_card:hover .nap_news_btn svg {
    transform: translateX(8px);
}
.napNewsSwiper .swiper-slide-active {
    opacity: 1;
}
.napNewsSwiper .swiper-slide {
    opacity: .75;
    transition:
        opacity .4s ease,
        transform .4s ease;
}
.napNewsSwiper .swiper-slide-active,
.napNewsSwiper .swiper-slide:hover {
    opacity: 1;
}
.napNewsSwiper .swiper-wrapper {
    transition-timing-function: linear !important;
}
.nap_message {
    position: relative;
    padding: 80px 0;
    background: var(--white);
    overflow: hidden;
}
.napMessageSwiper {
    overflow: hidden;
}
.napMessageSwiper .swiper-slide {
    height: auto;
}
.nap_message_content {
    max-width: 620px;
    position: relative;
    z-index: 2;
}
.nap_message_subtitle {
    display: block;
    font-family: "Dancing Script", cursive;
    font-weight: var(--fw-light);
    font-size: var(--fs-3xl);
    font-style: italic;
    color: #111827;
    line-height: 1;
}
.nap_message_title {
    font-family: "Nyght Serif Light";
    font-size: var(--fs-5xl);
    font-weight: 400;
    line-height: 0.95;
    margin: 12px 0 24px;
    color: var(--primary-blue);
}
.nap_message_quote {
    margin: 0;
    padding: 0;
    border: none;
    font-size: var(--fs-xl);
    font-style: italic;
    font-weight: 300;
    line-height: 1.4;
    color: #50586a;
    margin-top: 48px;
}
.nap_message_author {
    margin-top: 45px;
}
.nap_message_author h4 {
    margin-bottom: 8px;
    font-family: "Dancing Script", cursive;
    font-weight: var(--fw-light);
    font-size: var(--fs-3xl);
    color: var(--primary-blue);
}
.nap_message_author span {
    display: block;
    margin-bottom: 6px;
    font-size: var(--fs-base);
    font-weight: var(--fw-medium);
    text-transform: capitalize;
    color: var(--secondary-blue);
}
.nap_message_author p {
    margin: 0;
    font-size: var(--fs-base);
    color: var(--text-light);
}
.nap_message_navigation {
    position: absolute;
    left: -40px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    z-index: 50;
}
.nap_message_prev,
.nap_message_next {
    width: 65px;
    height: 65px;
    border: none;
    background: var(--primary-blue);
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
    cursor: pointer;
}
.nap_message_prev {
    border-radius: 40px 40px 0 0;
}
.nap_message_next {
    border-radius: 0 0 40px 40px;
}
.nap_message_prev:hover,
.nap_message_next:hover {
    background: var(--yellow);
    color: #07122d;
}
.nap_message_prev:hover svg {
    transform: translateY(-3px);
}
.nap_message_next:hover svg {
    transform: translateY(3px);
}
.nap_message_prev svg,
.nap_message_next svg {
    transition: .35s;
}
.nap_message_image {
    position: relative;
    overflow: visible;
}
.nap_message_image_inner {
    border-radius: 22px;
    overflow: hidden;
    position: relative;
}
.nap_message_image_inner img {
    width: 100%;
    display: block;
    transition:
        transform .8s ease,
        filter .5s ease;
    object-fit: cover;
}
.nap_message_image:hover .nap_message_image_inner img {
    transform: scale(1.08);
    filter:
        brightness(.95) contrast(1.05) saturate(1.08);
}
.swiper-slide-active .nap_message_subtitle {
    animation:
        napFadeUp .7s ease both;
}
.swiper-slide-active .nap_message_title {
    animation:
        napFadeUp .9s ease .15s both;

}
.swiper-slide-active .nap_message_intro {
    animation:
        napFadeUp 1s ease .3s both;

}
.swiper-slide-active .nap_message_quote {
    animation:
        napFadeUp 1.1s ease .45s both;

}
.swiper-slide-active .nap_message_author {
    animation:
        napFadeUp 1.2s ease .6s both;

}
.nap_message_author h4 {
    transition: .35s;
}
.nap_message_author span {
    transition: .35s;
}
.nap_message_author:hover span {
    letter-spacing: .15em;
}
.nap_message_quote {
    position: relative;
    padding-left: 30px;
}
.nap_message_quote::before {
    content: "";
    position: absolute;
    left: 0;
    top: 12px;
    width: 5px;
    height: 0;
    background:
        var(--yellow);
    border-radius: 20px;
    transition: .5s;
}
.swiper-slide-active .nap_message_quote::before {
    height: 85%;
}
.nap_message_prev,
.nap_message_next {
    position: relative;
    overflow: hidden;
    transition:
        .35s;
}
.nap_message_prev::before,
.nap_message_next::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-radius: 50%;
    background:
        rgba(255, 255, 255, .25);
    left: 50%;
    top: 50%;
    transform:
        translate(-50%, -50%);
    transition: .45s;
}
.nap_message_prev:hover::before,
.nap_message_next:hover::before {
    width: 140px;
    height: 140px;
}
.nap_message_prev:hover,
.nap_message_next:hover {
    background:
        var(--yellow);
    color:
        var(--text-primary);
    box-shadow:
        0 12px 30px rgba(255, 196, 0, .35);

}
.nap_message_prev:active,
.nap_message_next:active {
    transform:
        scale(.95);
}
.swiper-slide-active .nap_message_image {
    animation:
        napFloat 5s ease-in-out infinite;

}
@keyframes napFadeUp {

    from {

        opacity: 0;

        transform:
            translateY(45px);

    }

    to {

        opacity: 1;

        transform:
            translateY(0);

    }

}

@keyframes napFloat {

    0% {

        transform:
            translateY(0);

    }

    50% {

        transform:
            translateY(-10px);

    }

    100% {

        transform:
            translateY(0);

    }

}
.nap_testimonial_section {
    position: relative;
    padding: 108px 0;
    background: #eef5fb;
    overflow: hidden;
}
.nap_testimonial_heading {
    margin-bottom: 70px;
}
.nap_testimonial_subtitle {
    display: block;
    font-family: "Dancing Script", cursive;
    font-weight: var(--fw-light);
    font-size: var(--fs-3xl);
    font-style: italic;
    color: var(--text-primary);
    line-height: 1;
}
.nap_testimonial_title {
    font-family: "Nyght Serif Light";
    font-size: var(--fs-5xl);
    font-weight: 400;
    line-height: 0.95;
    margin: 12px 0 24px;
    color: var(--primary-blue);
}
.nap_testimonial_card {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 14px;
    text-decoration: none;
    transition: .45s ease;
    box-shadow: 0 12px 35px rgba(0, 0, 0, .08);
}
.nap_testimonial_card:hover {
    transform: translateY(-12px);
    box-shadow: 0 25px 60px rgba(0, 0, 0, .18);
}
.nap_testimonial_image {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    aspect-ratio: 4/5;
}
.nap_testimonial_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:
        transform .8s ease,
        filter .5s ease;
}
.nap_testimonial_card:hover img {
    transform: scale(1.08);
}
.nap_testimonial_image::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(to top,
            rgba(0, 0, 0, .92),
            rgba(0, 0, 0, .45) 40%,
            rgba(0, 0, 0, 0) 70%);
    transition: .4s;
}
.nap_testimonial_card:hover .nap_testimonial_image::before {
    background:
        linear-gradient(to top,
            rgba(0, 0, 0, .95),
            rgba(0, 0, 0, .35) 45%,
            rgba(0, 0, 0, 0) 75%);

}
.nap_testimonial_content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 5;
    padding: 28px;
    transition: .4s;
}
.nap_testimonial_card:hover .nap_testimonial_content {
    transform: translateY(-8px);

}
.nap_testimonial_content h4 {
    margin: 0;
    color: var(--white);
    font-size: var(--fs-xl);
    font-weight: var(--fw-medium);
    line-height: 1.2;
    transition: .35s;

}
.nap_testimonial_content span {
    display: block;
    margin-top: 8px;
    color: var(--text-light);
    font-size: var(--fs-base);
    transition: .35s;
}
.nap_testimonial_card:hover .nap_testimonial_content h4 {
    color: var(--yellow);
}
.nap_testimonial_card:hover .nap_testimonial_content span {
    color: var(--white);
}
.nap_testimonial_quote {
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 110px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(25px);
    transition:
        opacity .45s ease,
        transform .45s ease,
        visibility .45s;
    z-index: 5;
}
.nap_testimonial_quote svg {
    color: var(--yellow);
    margin-bottom: 12px;
}
.nap_testimonial_quote p {
    margin: 0;
    color: var(--white);
}
.nap_testimonial_card:hover .nap_testimonial_quote {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.nap_testimonial_card:hover .nap_testimonial_content {
    padding-bottom: 24px;
}
.nap_testimonial_card:hover .nap_testimonial_content h4 {
    transform: translateY(-8px);
}
.nap_testimonial_card:hover .nap_testimonial_content span {
    transform: translateY(-8px);
}
.nap_testimonial_card::before {

    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 4px;
    background: #ffd84d;
    z-index: 10;
    transition: .45s;

}
.nap_testimonial_card:hover::before {
    width: 100%;
}
.nap_testimonial_card::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -40px;
    width: 70%;
    height: 40px;
    transform: translateX(-50%);
    background: rgba(255, 216, 77, .45);
    filter: blur(35px);
    opacity: 0;
    transition: .45s;
}
.nap_testimonial_card:hover::after {
    opacity: 1;
}
.nap_infrastructure {
    position: relative;
    padding: 108px 0;
    overflow: hidden;
    background: var(--white);
}
.nap_infrastructure_heading {
    margin-bottom: 60px;
}
.napInfrastructureContentSwiper {
    overflow: hidden;
}
.napInfrastructureContentSwiper .swiper-slide {
    display: flex;
    align-items: center;
}
.nap_infrastructure_content {
    padding-right: 40px;
}
.nap_infrastructure_content {
    position: relative;
}
.nap_feature_number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 68px;
    height: 68px;
    margin-bottom: 14px;
    border-radius: 50%;
    background: var(--yellow);
    color: var(--text-primary);
    font-size: var(--fs-xl);
    font-weight: var(--fw-semibold);

}
.nap_infrastructure_content h4 {
    margin-bottom: 18px;
    font-size: var(--fs-xl);
    font-weight: var(--fw-medium);
    color: var(--text-primary);
}
.nap_infrastructure_image_wrap {
    position: relative;
}
.napInfrastructureImageSwiper {
    overflow: hidden;
    border-radius: 22px;
    -webkit-border-radius: 22px;
    -moz-border-radius: 22px;
    -ms-border-radius: 22px;
    -o-border-radius: 22px;
}
.napInfrastructureImageSwiper .swiper-slide {
    overflow: hidden;
    border-radius: 22px;
    -webkit-border-radius: 22px;
    -moz-border-radius: 22px;
    -ms-border-radius: 22px;
    -o-border-radius: 22px;
}
.nap_infrastructure_image {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    -webkit-border-radius: 22px;
    -moz-border-radius: 22px;
    -ms-border-radius: 22px;
    -o-border-radius: 22px;
}
.nap_infrastructure_image img {
    width: 100%;
    height: 450px;
    object-fit: cover;
    display: block;
    border-radius: 28px;
}
.nap_infrastructure_controls {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    z-index: 20;
}
.nap_infrastructure_prev,
.nap_infrastructure_next {
    width: 65px;
    height: 65px;
    border: none;
    background: var(--primary-blue);
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .35s;
    cursor: pointer;
}
.nap_infrastructure_prev {
    border-radius: 50px 0 0 50px;
}
.nap_infrastructure_next {
    border-radius: 0 50px 50px 0;
}
.nap_infrastructure_prev:hover,
.nap_infrastructure_next:hover {
    background: var(--yellow);
    color: #07122d;
}
.nap_infrastructure_prev svg,
.nap_infrastructure_next svg {
    width: 22px;
    height: 22px;
}
.nap_infrastructure_image {
    position: relative;
    overflow: hidden;
    border-radius: 28px;
}
.nap_infrastructure_image::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg,
            rgba(0, 0, 0, .05),
            rgba(0, 0, 0, .28));
    opacity: 0;
    transition: .45s;
    z-index: 2;
}
.nap_infrastructure_image::after {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 60%;
    height: 100%;
    background:
        linear-gradient(90deg,
            transparent,
            rgba(255, 255, 255, .45),
            transparent);
    transform: skewX(-25deg);
    z-index: 3;
}
.nap_infrastructure_image img {
    transition:
        transform .8s ease,
        filter .45s ease;
}
.napInfrastructureImageSwiper .swiper-slide:hover .nap_infrastructure_image img {
    transform: scale(1.08);
    filter:
        brightness(.95) contrast(1.05) saturate(1.08);
}
.napInfrastructureImageSwiper .swiper-slide:hover .nap_infrastructure_image::before {
    opacity: 1;
}
.napInfrastructureImageSwiper .swiper-slide:hover .nap_infrastructure_image::after {
    animation:
        napInfraShine 1.2s linear;
}
@keyframes napInfraShine {
    100% {
        left: 180%;
    }
}
.napInfrastructureContentSwiper .swiper-slide-active .nap_infrastructure_content {
    animation: napFadeUp .8s ease;
    -webkit-animation: napFadeUp .8s ease;
}
@keyframes napFadeUp {

    from {
        opacity: 0;
        transform:
            translateY(35px);
    }

    to {
        opacity: 1;
        transform:
            translateY(0);
    }
}
.nap_feature_number {
    transition:
        .45s ease;
}
.napInfrastructureContentSwiper .swiper-slide-active .nap_feature_number {
    animation:
        napRotateNumber .8s ease;
}
@keyframes napRotateNumber {

    from {
        opacity: 0;
        transform:
            rotate(-180deg) scale(.5);
    }

    to {
        opacity: 1;
        transform:
            rotate(0) scale(1);
    }
}
.nap_infrastructure_content h4 {
    transition: .35s;

}
.nap_infrastructure_prev,
.nap_infrastructure_next {
    position: relative;
    overflow: hidden;
    transition:
        .35s;
}
.nap_infrastructure_prev::before,
.nap_infrastructure_next::before {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-radius: 50%;
    background:
        rgba(255, 255, 255, .25);
    left: 50%;
    top: 50%;
    transform:
        translate(-50%, -50%);
    transition: .45s;

}
.nap_infrastructure_prev:hover::before,
.nap_infrastructure_next:hover::before {
    width: 140px;
    height: 140px;
    transform:
        scale(2);

}
.nap_infrastructure_prev:hover,
.nap_infrastructure_next:hover {
    background:
        var(--yellow);
    color:
        var(--text-primary);
    box-shadow:
        0 12px 30px rgba(255, 196, 0, .35);

}
.nap_infrastructure_prev svg,
.nap_infrastructure_next svg {
    position: relative;
    z-index: 2;
    transition:
        transform .35s;
}
.nap_infrastructure_next:active,
.nap_infrastructure_prev:active {
    transform:
        scale(.95);
}
.napInfrastructureImageSwiper .swiper-slide-active .nap_infrastructure_image {
    animation:
        napFloating 5s ease-in-out infinite;

}

@keyframes napFloating {

    0% {
        transform:
            translateY(0);
    }

    50% {
        transform:
            translateY(-10px);
    }

    100% {
        transform:
            translateY(0);
    }

}
.nap_infrastructure {
    position: relative;
}
.nap_infrastructure::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    top: -180px;
    right: -180px;
    background:
        radial-gradient(rgba(255, 208, 0, .10),
            transparent 70%);
    pointer-events: none;

}
.nap_infrastructure::after {
    content: "";
    position: absolute;
    width: 320px;
    height: 320px;
    border-radius: 50%;
    left: -140px;
    bottom: -140px;
    background:
        radial-gradient(rgba(7, 17, 38, .06),
            transparent 70%);
    pointer-events: none;

}
.nap_infrastructure_content h3,
.nap_infrastructure_content p {
    transition:
        opacity .35s,
        transform .35s;
}
.nap_place_section {
    position: relative;
    overflow: hidden;
    background: var(--white);
}
.nap_place_section .row {
    min-height: 650px;
    align-items: stretch;
}
.nap_place_content_col,
.nap_place_image_col {
    display: flex;
    padding: 0;
}
.nap_place_content {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    padding: clamp(25px, 5vw, 70px);
    background: var(--coffee);
    overflow: hidden;
    z-index: 1;
}
.nap_place_content::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .05);
    top: -180px;
    left: -160px;
    animation: napPlaceFloat 10s ease-in-out infinite;
    z-index: -1;
}
.nap_place_content::after {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 50%;
    right: -120px;
    bottom: -120px;
    z-index: -1;
}
.nap_place_subtitle {
    display: block;
    font-family: "Dancing Script", cursive;
    font-size: var(--fs-3xl);
    color: var(--white);
    line-height: 1;
}
.nap_place_title {
    font-family: "Nyght Serif Light";
    font-size: var(--fs-5xl);
    font-weight: 400;
    line-height: 1;
    color: var(--white);
    margin: 12px 0 24px;
}
.nap_place_text {
    max-width: 620px;
    color: var(--white);
    margin-bottom: 35px;
    font-weight: var(--fw-normal);
}
.nap_place_btn_wrap {
    display: flex;
    gap: 10px;
}
.nap_place_btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 18px 34px;
    background: var(--white);
    color: var(--text-secondary);
    text-decoration: none;
    border-radius: 60px;
    font-size: var(--fs-base);
    font-weight: var(--fw-normal);
    position: relative;
    overflow: hidden;
    transition: .45s ease;
}
.nap_place_btn span,
.nap_place_btn svg {
    position: relative;
    z-index: 2;
}
.nap_place_btn svg {
    transition: .4s;
}
.nap_place_btn::before {
    content: "";
    position: absolute;
    inset: 0;
    left: -100%;
    background: var(--white);
    transition: .45s;
}
.nap_place_btn:hover::before {
    left: 0;
}
.nap_place_btn:hover {
    transform: translateY(-5px);
    color: var(--text-primary);
    box-shadow: 0 20px 45px rgba(0, 0, 0, .18);
}
.nap_place_btn:hover svg {
    transform: translateX(6px);
}
.nap_place_image {
    position: relative;
    width: 100%;
    height: 100%;
    min-height: 450px;
    overflow: hidden;
    transition: .5s;
}
.nap_place_image_wrap {
    position: absolute;
    inset: 0;
    overflow: hidden;
}
.nap_place_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .8s ease;
    display: block;
}
.nap_place_image_wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg,
            rgba(255, 255, 255, .18),
            transparent 45%,
            transparent 60%,
            rgba(255, 255, 255, .08));
    opacity: 0;
    transition: .5s;
    z-index: 2;
}
.nap_place_image:hover img {
    transform: scale(1.08);
}
.nap_place_image:hover .nap_place_image_wrap::before {
    opacity: 1;
}
.nap_place_image:hover .nap_place_image_wrap::after {
    left: 140%;
}
.nap_place_image:hover {
    box-shadow: 0 30px 60px rgba(0, 0, 0, .18);
}
.nap_place_subtitle,
.nap_place_title,
.nap_place_text {
    transition: .4s ease;
}

.nap_place_content:hover .nap_place_subtitle {
    transform: translateX(6px);
}

.nap_place_content:hover .nap_place_title {
    transform: translateX(10px);
}

.nap_place_content:hover .nap_place_text {
    transform: translateX(8px);
}
@keyframes napPlaceFloat {

    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-18px);
    }

    100% {
        transform: translateY(0);
    }

}
.nap_grow_section {
    position: relative;
    padding: 100px 0;
    background: var(--white);
    overflow: hidden;
}
.nap_grow_subtitle {
    display: block;
    margin-bottom: 8px;
    font-family: "Dancing Script", cursive;
    font-size: var(--fs-3xl);
    color: var(--primary-color);
    line-height: 1;
}
.nap_grow_title {
    margin-bottom: 20px;
    font-family: "Nyght Serif Light";
    font-size: var(--fs-5xl);
    font-weight: 400;
    color: var(--text-primary);
    line-height: 1;
}
.nap_grow_description {
    max-width: 720px;
    margin: 0 auto;
    color: var(--text-secondary);
    font-size: var(--fs-base);
}
.nap_grow_card {
    position: relative;
    display: block;
    height: 320px;
    border-radius: 22px;
    overflow: hidden;
    text-decoration: none;
    background: var(--black);
    isolation: isolate;
    transition: .45s ease;
    box-shadow: 0 12px 35px rgba(0, 0, 0, .08);
}
.nap_grow_image {
    position: relative;
    width: 100%;
    height: 100%;
}
.nap_grow_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.nap_grow_image::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;

    background:
        linear-gradient(to top,
            rgba(0, 0, 0, .92),
            rgba(0, 0, 0, .45) 40%,
            rgba(0, 0, 0, 0) 70%);

    transition: .4s;
}
.nap_grow_content {
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 28px;
    z-index: 2;
    color: var(--white);
}
.nap_grow_content {
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 28px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    z-index: 3;
}
.nap_grow_tag {
    display: inline-block;
    margin-bottom: 4px;
    font-size: var(--fs-sm);
    font-weight: var(--fw-light);
    text-transform: capitalize;
    color: var(--text-white);
}
.nap_grow_heading {
    margin: 0;
    font-size: var(--fs-lg);
    font-weight: var(--fw-medium);
    color: var(--white);
}
.nap_grow_icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    color: var(--white);
    border: 1px solid rgba(255, 255, 255, .35);
    backdrop-filter: blur(12px);
    background: rgba(255, 255, 255, .08);
}
.nap_grow_icon svg {
    transition: .45s ease;
}
.nap_grow_card {
    transition:
        transform .45s ease,
        box-shadow .45s ease;
}
.nap_grow_card:hover {
    transform: translateY(-12px);
    box-shadow: 0 35px 70px rgba(0, 0, 0, .18);
}
.nap_grow_image img {
    transition:
        transform 1.2s ease,
        filter .6s ease;
}

.nap_grow_card:hover .nap_grow_image img {
    transform: scale(1.12);
    filter: brightness(1.05);
}
.nap_grow_tag,
.nap_grow_heading,
.nap_grow_icon {
    transition: .45s ease;
}
.nap_grow_card:hover .nap_grow_icon {
    transform: rotate(45deg) scale(1.08);
    background: var(--primary-color);
    border-color: var(--primary-color);
}
.nap_grow_card:hover .nap_grow_icon svg {
    transform: translate(1px, -1px);
    -webkit-transform: translate(1px, -1px);
    -moz-transform: translate(1px, -1px);
    -ms-transform: translate(1px, -1px);
    -o-transform: translate(1px, -1px);
}
.nap_grow_card::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, .15);
    opacity: 0;
    transition: .45s;
    z-index: 5;
    pointer-events: none;
}
.nap_grow_card:hover::after {
    opacity: 1;
}
.nap_grow_card:nth-child(1) {
    animation: napFloat 7s ease-in-out infinite;
}
.nap_grow_card:nth-child(2) {
    animation: napFloat 8s ease-in-out infinite;
}
.nap_grow_card:nth-child(3) {
    animation: napFloat 9s ease-in-out infinite;
}
@keyframes napFloat {

    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-6px);
    }

    100% {
        transform: translateY(0);
    }

}
.nap_footer {
    position: relative;
    overflow: hidden;
    background: var(--primary-blue);
    color: var(--white);
    padding: 90px 0 40px;
    isolation: isolate;
}

.nap_footer .container {
    position: relative;
    z-index: 2;
}
.nap_footer_bg_logo {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
    z-index: 1;
    overflow: hidden;
}
.nap_footer_bg_logo img {
    width: min(42vw, 620px);
    min-width: 260px;
    max-width: 620px;
    opacity: .06;
    user-select: none;
    animation: napFooterRotate 60s linear infinite;
}
.nap_footer_heading {
    margin-bottom: 24px;
}
.nap_footer_subtitle {
    display: block;
    font-family: "Dancing Script", cursive;
    font-weight: var(--fw-light);
    font-size: var(--fs-3xl);
    font-style: italic;
    color: var(--white);
    line-height: 1;
}
.nap_footer_title {
    font-family: "Nyght Serif Light";
    font-size: var(--fs-5xl);
    font-weight: 400;
    line-height: 0.95;
    margin: 12px 0 24px;
    color: var(--white);
}
.nap_footer_widget {
    position: relative;
    z-index: 2;
}
.nap_footer_widget_title {
    margin-bottom: 28px;
    font-size: var(--fs-xl);
    font-weight: var(--fw-semibold);
    color: var(--white);
}
.nap_footer_small_title {
    margin: 34px 0 18px;
    font-size: var(--fs-xl);
    font-weight: var(--fw-semibold);
    color: var(--white);
}
.nap_footer_text {
    color: rgba(255, 255, 255, .82);
    line-height: 1.5;
    font-size: var(--fs-base);
}
.nap_footer_contact {
    margin: 0;
    padding: 0;
    list-style: none;
}
.nap_footer_contact li {
    margin-bottom: 18px;
    color: rgba(255, 255, 255, .82);
    line-height: 1.5;
    font-size: var(--fs-base);
}
.nap_footer_contact a {
    color: var(--white);
    text-decoration: none;
    transition: .35s;
    font-weight: var(--fw-light);
}
.nap_footer_links {
    margin: 0;
    padding: 0;
    list-style: none;
}
.nap_footer_links li {
    margin-bottom: 14px;
}

.nap_footer_links a {
    position: relative;
    display: inline-block;
    color: rgba(255, 255, 255, .85);
    text-decoration: none;
    font-size: var(--fs-base);
    transition: .35s ease;
}
.nap_footer_social {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 10px;
}
.nap_footer_social_link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    text-decoration: none;
    color: var(--white);
    font-size: var(--fs-xl);
    border: 1px solid rgba(255, 255, 255, .12);
    background: rgba(255, 255, 255, .03);
    backdrop-filter: blur(12px);
    transition: .45s;
}
.nap_footer_contact_btn {
    margin-top: 35px;
}
.nap_footer_contact_btn a {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: var(--white);
    text-decoration: none;
    font-size: 18px;
    font-weight: 500;
}
.nap_footer_bottom {
    margin-top: 80px;
    padding-top: 30px;
    border-top: 1px solid rgba(255, 255, 255, .08);
}
.nap_footer_bottom_left,
.nap_footer_bottom_right {
    display: flex;
    align-items: center;
    gap: 18px;
    color: rgba(255, 255, 255, .72);
    font-size: 16px;
}
.nap_footer_bottom_right {
    justify-content: flex-end;
}
.nap_footer_bottom a {
    color: var(--white);
    text-decoration: none;
}
@keyframes napFooterRotate {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }

}
.nap_footer_links a,
.nap_footer_contact a,
.nap_footer_bottom a,
.nap_footer_contact_btn a {
    position: relative;
    transition: all .4s ease;
}
.nap_footer_links a::after,
.nap_footer_contact a::after,
.nap_footer_bottom a::after,
.nap_footer_contact_btn a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 0;
    height: 2px;
    background: var(--light-blue);
    transition: width .35s ease;
}
.nap_footer_links a:hover,
.nap_footer_contact a:hover,
.nap_footer_bottom a:hover,
.nap_footer_contact_btn a:hover {

    color: var(--light-blue);

}
.nap_footer_links a:hover::after,
.nap_footer_contact a:hover::after,
.nap_footer_bottom a:hover::after,
.nap_footer_contact_btn a:hover::after {
    width: 100%;
}
.nap_footer_widget {
    transition:
        transform .45s ease,
        opacity .45s ease;
}
.nap_footer_widget:hover {
    transform: translateY(-6px);
}
.nap_footer_social_link {
    position: relative;
    overflow: hidden;
}
.nap_footer_social_link::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background:
        radial-gradient(circle,
            rgba(255, 255, 255, .25),
            transparent 70%);
    transform: scale(0);
    transition: .45s ease;
}
.nap_footer_social_link:hover {
    color: var(--white);
    transform:
        translateY(-8px) rotate(6deg) scale(1.08);
    box-shadow:
        0 15px 35px rgba(0, 0, 0, .25),
        0 0 20px rgba(255, 255, 255, .08);
}
.nap_footer_social_link:hover::before {
    transform: scale(2);
}
.nap_footer_social_link i {
    transition: .45s ease;
}
.nap_footer_social_link:hover i {
    transform: scale(1.15);
}
.nap_footer_contact_btn a {
    transition: .4s ease;
}
.nap_footer_contact_btn a:hover {
    letter-spacing: .8px;
}
.nap_footer_title,
.nap_footer_subtitle {
    transition: .45s ease;
}
.nap_footer_heading:hover .nap_footer_subtitle {
    transform: translateX(8px);
}
.nap_footer_heading:hover .nap_footer_title {
    transform: translateX(12px);
}
.nap_footer::before {
    content: "";
    position: absolute;
    top: 0;
    left: -140%;
    width: 40%;
    height: 100%;
    background:
        linear-gradient(90deg,
            transparent,
            rgba(255, 255, 255, .05),
            transparent);
    transform: skewX(-25deg);
    animation: napFooterShimmer 12s linear infinite;
    pointer-events: none;
}

@keyframes napFooterShimmer {
    100% {
        left: 180%;
    }

}
.nap_footer_bg_logo img {
    transition:
        transform .8s ease,
        opacity .8s ease;
}
.nap_footer:hover .nap_footer_bg_logo img {
    transform: scale(1.04);
    opacity: .08;
}
.nap_footer_bottom {
    transition: .4s ease;
}
.nap_footer_bottom:hover {
    border-color:
        rgba(255, 255, 255, .15);
}
.nap_footer_widget {
    animation: napFooterFade .8s ease both;
}
.nap_footer_widget:nth-child(1) {
    animation-delay: .15s;
}
.nap_footer_widget:nth-child(2) {
    animation-delay: .3s;
}
.nap_footer_widget:nth-child(3) {
    animation-delay: .45s;
}
.nap_footer_widget:nth-child(4) {
    animation-delay: .6s;
}
@keyframes napFooterFade {

    from {

        opacity: 0;

        transform:
            translateY(40px);

    }

    to {

        opacity: 1;

        transform:
            translateY(0);

    }

}
.nap_breadcrumbs {
    position: relative;
    overflow: hidden;
    background: var(--primary-blue);
    min-height: 340px;
    /* Set banner height */
    display: flex;
    align-items: flex-end;
    /* Move content to bottom */
    padding: 0;
    padding-bottom: 60px;
    isolation: isolate;
}
.nap_breadcrumbs::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, .15);
    z-index: 1;
}
.nap_breadcrumbs_watermark {
    position: absolute;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
    z-index: 0;
}
.nap_breadcrumbs_watermark::before {
    content: "";
    position: absolute;
    width: 550px;
    height: 550px;
    border-radius: 50%;
    background:
        radial-gradient(circle,
            rgba(255, 255, 255, .08),
            transparent 70%);
    animation: napBreadcrumbGlow 8s ease-in-out infinite;

}
.nap_breadcrumbs::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 20% 30%, rgba(255, 255, 255, .06) 2px, transparent 3px),
        radial-gradient(circle at 70% 20%, rgba(255, 255, 255, .05) 2px, transparent 3px),
        radial-gradient(circle at 80% 75%, rgba(255, 255, 255, .04) 2px, transparent 3px);
    animation: napBreadcrumbFloat 18s linear infinite;
    pointer-events: none;
    z-index: 1;
}

@keyframes napBreadcrumbFloat {
    from {
        transform: translateY(0);
    }

    to {
        transform: translateY(-30px);
    }
}
.nap_breadcrumbs_watermark img {
    width: min(32vw, 360px);
    min-width: 180px;
    opacity: .07;
    filter: brightness(0) invert(1);
    animation: napBreadcrumbRotate 60s linear infinite;
    user-select: none;
}
.nap_breadcrumbs_content {
    position: relative;
    z-index: 3;
    text-align: center;
    width: 100%;
}
.nap_breadcrumbs_title {
    font-size: var(--fs-5xl);
    font-weight: var(--fw-light) !important;
    line-height: 1;
    font-family: "Nyght Serif Light";
    color: var(--white);
}
.nap_breadcrumbs_list {
    margin: 0;
    background: none;
    margin-bottom: 0 !important;
}
.nap_breadcrumbs_list .breadcrumb-item {
    color: rgba(255, 255, 255, .75);
    font-size: 15px;
}
.nap_breadcrumbs_list .breadcrumb-item a {
    color: rgba(255, 255, 255, .75);
    text-decoration: none;
    transition: .35s;
}
.nap_breadcrumbs_list .breadcrumb-item a:hover {
    color: var(--yellow);
}
.nap_breadcrumbs_list .breadcrumb-item.active {
    color: var(--white);
}
.nap_breadcrumbs_list .breadcrumb-item+.breadcrumb-item::before {
    color: rgba(255, 255, 255, .5);
}
@keyframes napBreadcrumbRotate {

    from {

        transform: rotate(0deg);

    }

    to {

        transform: rotate(360deg);

    }

}
@keyframes napBreadcrumbGlow {

    0%,
    100% {

        transform: scale(1);

        opacity: .5;

    }

    50% {

        transform: scale(1.15);

        opacity: .9;

    }
}
.nap_about_scroll .nap_subtitle,
.nap_about_scroll .nap_title,
.nap_about_scroll p {
    opacity: 0;
    transition:
        transform .9s cubic-bezier(.22, .61, .36, 1),
        opacity .9s ease;
}
.nap_about_scroll .nap_subtitle {
    transform:
        translateY(50px);
}
.nap_about_scroll .nap_title {
    transform:
        perspective(800px) rotateX(-80deg) translateY(50px);
    transform-origin: bottom;
}
.nap_about_scroll p {
    transform:
        translateY(40px);
}
.nap_about_scroll.nap_about_active .nap_subtitle {
    opacity: 1;
    transform: translateY(0);
}
.nap_about_scroll.nap_about_active .nap_title {
    opacity: 1;
    transform:
        perspective(800px) rotateX(0deg) translateY(0);
}
.nap_about_scroll.nap_about_active p {
    opacity: 1;
    transform: translateY(0);

}
.nap_about_scroll .nap_subtitle {
    transition-delay: .1s;
}
.nap_about_scroll .nap_title {
    transition-delay: .3s;
}
.nap_about_scroll p:nth-of-type(1) {
    transition-delay: .55s;
}
.nap_about_scroll p:nth-of-type(2) {
    transition-delay: .8s;
}
.nap_inner_section {
    position: relative;
    overflow: hidden;
    background: var(--white);
    color: var(--white);
    padding: 88px 0 68px;
    isolation: isolate;
}
.nap_info_block ul li {
    color: var(--text-secondary);
}
.message-head {
    text-align: start;
}
.message-head h6 {
    line-height: 18px;
    text-transform: capitalize;
    color: var(--primary-blue);
    font-family: "Dancing Script", cursive;
    font-weight: var(--fw-light);
    font-size: var(--fs-xl);
    color: #111827;
    line-height: 1;
}
.message-head h3 {
    margin-bottom: 15px;
    color: var(--primary-blue);
    font-size: var(--fs-3xl);
    font-weight: var(--fw-light) !important;
    line-height: 1;
    font-family: "Nyght Serif Light";
}
.message-content h4 {
    margin-bottom: 15px;
    color: var(--primary-blue);
    font-weight: var(--fw-medium) !important;
    line-height: 1;
}
.message-content h6{
    color: var(--primary-blue);
}
.key{
    margin-top: 14px;
}
.message-image {
    position: relative;
}
.message-image img {
    border-radius: 14px;
    -webkit-border-radius: 14px;
    -moz-border-radius: 14px;
    -ms-border-radius: 14px;
    -o-border-radius: 14px;
}
.message-image .qoute {
    position: absolute;
    top: 80px;
    left: -28px;
}
.message-school h6,
.message-school p {
    margin-bottom: 5px;

}
.message-school h6 {
    font-family: "Bilbo Swash Caps", cursive;
    font-size: var(--fs-3xl);
    color: var(--primary-blue);
}
.bottom_block {
    display: flex;
    flex-wrap: wrap;
    gap: 82px;
    padding: 80px 0;
    background: repeating-linear-gradient(to right, #836A49 0, #836A49 1px, transparent 1px, transparent 18px) bottom/100% 8px no-repeat
}

.bottom_block:last-child {
    padding-bottom: 0;
    background: none
}
.bottom_block:nth-child(odd) {
    flex-direction: row-reverse
}
.message-one {
    position: relative;
    overflow: visible;
    /* important */
}
.nap_in_facility_image {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    background: transparent;
    box-shadow: 0 20px 45px rgba(0, 0, 0, .08);
    transition:
        transform .45s ease,
        box-shadow .45s ease;
    animation:
        napFacilityFade .8s ease,
        napFacilityFloat 6s ease-in-out infinite;

}
.nap_in_facility_img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:
        transform .8s ease,
        filter .6s ease;
    will-change: transform;

}
.nap_in_facility_image::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top,
            rgba(0, 0, 0, .18),
            transparent 45%);
    opacity: 0;
    transition: opacity .45s ease;
    z-index: 2;
}
.nap_in_facility_image::after {
    content: "";
    position: absolute;
    top: -70%;
    left: -130%;
    width: 45%;
    height: 220%;
    background:
        linear-gradient(90deg,
            transparent,
            rgba(255, 255, 255, .55),
            transparent);

    transform: rotate(25deg);
    transition: left .9s ease;
    pointer-events: none;
    z-index: 3;
}
@keyframes napFacilityFade {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}
@keyframes napFacilityFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-12px);
    }

}
.nap_mission_section {
    background: var(--yellow);
    padding: 40px 0;
}
.nap_mission_image {
    overflow: hidden;
    border-radius: 14px;
    height: 100%;
}
.nap_mission_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s;
    display: block;
}
.nap_mission_image:hover img {
    transform: scale(1.05);
}
.nap_mission_content {
    color: var(--white);
    padding-left: 14px;
}
.nap_mission_content h2 {
    color: var(--black);
}
.nap_mission_content ul {
    padding-left: 0px !important;
}
.nap_mission_content ul li {
    color: var(--black);
}
.nap_mission_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    background: #f5f24c;
    color: #003d44;
    text-decoration: none;
    padding: 18px 34px;
    border-radius: 100px;
    font-size: 18px;
    font-weight: 700;
    transition: .35s;
}
.nap_mission_btn i {
    font-size: 24px;
    transition: .35s;
}
.nap_mission_btn:hover {
    background: var(--white);
    color: #003d44;
}
.nap_mission_btn:hover i {
    transform: translateX(8px);
}
.blog-card-4 {
    background-color: var(--white-color);
    box-shadow: 0 4px 56.5px rgba(0, 0, 0, 0.06);
    z-index: 1;
    -webkit-transition: all 0.3s linear 0s;
    -o-transition: all 0.3s linear 0s;
    transition: all 0.3s linear 0s;
    border-radius: 14px;
    -webkit-border-radius: 14px;
    -moz-border-radius: 14px;
    -ms-border-radius: 14px;
    -o-border-radius: 14px;
}
.blog-card-4:hover {
    background-color: var(--white-color);
    box-shadow: 0 35px 41.5px -16px rgba(0, 69, 64, 0.08);
}
.blog-card-4 .thumb {
    position: relative;
    width: 100%;
    overflow: hidden;
    background: #eef1f5;
    display: flex;
    align-items: center;
    justify-content: center;
}
.blog-card-4 .thumb>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    position: relative;
    z-index: 2;
}
.blog-card-4 .thumb>img[src=""],
.blog-card-4 .thumb>img:not([src]),
.blog-card-4 .thumb>img[src="#"] {
    opacity: 0;
}
.blog-card-4 .thumb::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        url("/images/svg/No-Image.svg");
    background-size: cover;
    background-position: center;
    z-index: 1;
    width: 100%;
}
.details-layout-wrap {
    margin-top: 24px;
}
.blog-card-4 .content {
    padding: 28px 30px 24px 30px;
}
.blog-card-4 .content .blog-info {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 12px;
}
.blog-card-4 .content .blog-info p {
    color: var(--text-secondary);
    margin-bottom: 0;
}
.blog-card-4 .content .blog-info .date i {
    color: var(--text-secondary);
}
.blog-card-4 .content .blog-info .date,
.blog-card-4 .content .blog-info .comment,
.blog-card-4 .content .blog-info .view {
    display: flex;
    align-items: center;
    gap: 10px;
}
.blog-card-4 .content .blog-info .publisher-info img,
.blog-card-4 .content .blog-info .date img,
.blog-card-4 .content .blog-info .comment img,
.blog-card-4 .content .blog-info .view img {
    width: 30px;
    height: 30px;
    border-radius: 100%;
}
.blog-card-4 .content .title h3 {
    margin-bottom: 12px;
}
.blog-card-4 .content .title h4 {
    font-family: "Pliant", sans-serif !important;
    color: var(--text-primary);
    font-size: var(--fs-2xl);
}
.nap_news_content_inn {
    position: relative;
    padding: 28px 30px 26px 30px;
    flex: 1;
}
.nap_news_text {
    height: 230px;
    overflow: hidden;
    transition: height .6s cubic-bezier(.4, 0, .2, 1);
}
.nap_news_text.expanded {
    max-height: 3000px;
}
.nap_news_fade {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 55px;
    height: 90px;
    background: linear-gradient(to bottom,
            rgba(255, 255, 255, 0),
            rgba(255, 255, 255, .95) 70%,
            var(--white) 100%);
    pointer-events: none;
    transition: opacity .35s ease;
    z-index: 0;
}
.nap_news_fade.hide {
    opacity: 0;
}
.nap_news_text.expanded+.nap_news_fade {
    opacity: 0;
    visibility: hidden;
}
.nap_news_btn_inn {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 30px;
    border: none;
    border-radius: 50px;
    color: var(--text-primary);
    font-weight: 600;
    margin-top: 20px;
    transition: .3s;
}
.nap_achievement_card {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    background: var(--white);
    border-radius: 14px;
    border: none !important;
    overflow: hidden;
    box-shadow: 0 10px 40px rgba(0, 0, 0, .05);
    transition: transform .55s cubic-bezier(.22, .61, .36, 1), box-shadow .55s cubic-bezier(.22, .61, .36, 1);
    will-change: transform;
    backface-visibility: hidden;
    -webkit-border-radius: 14px;
    -moz-border-radius: 14px;
    -ms-border-radius: 14px;
    -o-border-radius: 14px;
}
.nap_achievement_card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, .10);
}
.nap_achievement_empty {
    display: flex;
    flex-direction: column;
}
.nap_achievement_empty .nap_achievement_content {
    display: none;
}
.nap_achievement_empty .nap_achievement_img {
    flex: 1;
}
.nap_achievement_img {
    position: relative;
    width: 100%;
    height: 440px;
    overflow: hidden;
    background: #eef1f5;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.nap_achievement_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform .8s cubic-bezier(.22, .61, .36, 1);
    will-change: transform;
}
.nap_achievement_card:hover .nap_achievement_img img {
    transform: scale(1.08);
}
.nap_achievement_img img[src=""],
.nap_achievement_img img[src="#"],
.nap_achievement_img img:not([src]) {
    opacity: 0;
}
.nap_achievement_img::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url("/images/svg/No-Image.svg") center/cover no-repeat;
    z-index: 0;
}
.nap_achievement_img img {
    position: relative;
    z-index: 2;
}
.nap_achievement_date {
    position: absolute;
    left: 20px;
    bottom: 20px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .15);
    backdrop-filter: blur(10px);
    color: var(--white);
    font-size: var(--fs-xs);
    font-weight: var(--fw-medium);
    box-shadow: 0 4px 20px rgba(0, 0, 0, .10);
    z-index: 3;
}
.nap_achievement_date::before {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--yellow);
}
.nap_achievement_content {
    padding: 32px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.nap_achievement_heading {
    font-weight: var(--fw-semibold);
    margin-bottom: 14px;
    color: var(--text-primary);
}
.nap_achievement_para {
    margin-bottom: 0;
}
.nap_downloads_card {
    position: relative;
    background: var(--white);
    border-radius: 18px;
    overflow: hidden;
    height: 100%;
    box-shadow:
        0 10px 30px rgba(0, 0, 0, .06);

    transition:
        transform .45s ease,
        box-shadow .45s ease,
        border-color .45s ease;
}
.nap_downloads_card::before {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 60%;
    height: 100%;
    background: linear-gradient(120deg,
            transparent,
            rgba(255, 255, 255, .45),
            transparent);
    transition: left .8s ease;
}
.nap_downloads_card:hover::before {
    left: 140%;
}
.nap_downloads_card:hover {
    transform: translateY(-10px);
    box-shadow:
        0 20px 45px rgba(0, 0, 0, .12);
}
.nap_downloads_icon {
    width: 58px;
    height: 58px;
    transition:
        transform .45s ease;
}
.nap_downloads_card:hover .nap_downloads_icon {
    transform:
        rotate(-8deg) scale(1.12);
}
.nap_downloads_title {
    font-size: var(--fs-base);
    font-weight: var(--fw-semibold);
    margin-bottom: 6px;
    color: var(--text-secondary);
    transition: .35s;
}
.nap_downloads_card:hover .nap_downloads_title {
    color: var(--text-primary);
}
.nap_downloads_date {
    font-size: var(--fs-sm);
    color: var(--text-light);
    margin-bottom: 0;
}
.nap_downloads_buttons {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}
.nap_downloads_preview,
.nap_downloads_btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 50px !important;
    padding: 10px 22px;
    font-size: var(--fs-base);
    font-weight: var(--fw-normal) !important;
    transition: all .35s ease;
    -webkit-border-radius: 50px !important;
    -moz-border-radius: 50px !important;
    -ms-border-radius: 50px !important;
    -o-border-radius: 50px !important;
    color: var(--white) !important;
}
.nap_downloads_btn {
    background: var(--primary-blue) !important;
    color: var(--white);

}
.nap_downloads_btn:hover {
    background: #04953a !important;
    color: var(--white);

}
.nap_downloads_preview {
    background: var(--light-blue) !important;
    color: var(--text-secondary) !important;

}
.nap_downloads_preview:hover {
    background: var(--light-blue);
    color: var(--text-primary) !important;
}
.nap_downloads_btn svg,
.nap_downloads_preview svg {
    transition: transform .35s ease;
}
#nap_preloader {
    position: fixed;
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background:
        radial-gradient(circle at top,
            rgba(255, 213, 74, .08),
            transparent 35%),
        linear-gradient(135deg,
            #00071C,
            #020C2D,
            #041B46,
            #07295D);
    z-index: 9999;
    overflow: hidden;
    transition: .8s;
}
#nap_preloader.hide {
    opacity: 0;
    visibility: hidden;
}
.nap_loader {
    text-align: center;
    position: relative;
}
.nap_loader_circle {
    width: 220px;
    height: 220px;
    position: relative;
    margin: auto;
}
.nap_loader_logo {
    width: 160px;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.nap_ring {
    position: absolute;
    inset: 0;
    border-radius: 50%;
}
.ring_one {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, .08);
}
.ring_one::before {
    content: "";
    position: absolute;
    inset: -2px;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: var(--yellow);
    border-right-color: var(--yellow);
    animation: ringOne 1.4s linear infinite;
}
.ring_one::after {
    content: "";
    position: absolute;
    inset: 10px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .08);
}
.nap_loader h2 {
    color: var(--white);
    margin-top: 35px;
    font-size: var(--fs-5xl);
    font-family: "Nyght Serif Light";
}
.nap_loader p {
    font-size: var(--fs-md);
    color: var(--white);
    letter-spacing: normal;
    text-transform: capitalize;
    font-family: "Dancing Script", cursive;
    font-weight: var(--fw-light);
}
.nap_orbit {
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--yellow);
    left: 50%;
    top: 50%;
    transform-origin: 0 -90px;
}
.orbit1 {
    animation: orbit 5s linear infinite;
}

.orbit2 {
    animation: orbit 7s linear infinite reverse;
}
.orbit3 {
    animation: orbit 9s linear infinite;
}
.nap_loading {
    width: 220px;
    height: 3px;
    background: rgba(255, 255, 255, .08);
    margin: 35px auto 0;
    overflow: hidden;
    border-radius: 20px;
}
.nap_loading span {
    display: block;
    width: 35%;
    height: 100%;
    background: var(--yellow);
    animation: loading 1.4s ease infinite;
}
@keyframes ringOne {
    100% {
        transform: rotate(360deg);
    }
}

@keyframes logoFloat {

    0%,
    100% {
        transform: translate(-50%, -50%);
    }

    50% {
        transform: translate(-50%, -60%);
    }
}

@keyframes orbit {
    100% {
        transform: rotate(360deg);
    }
}

@keyframes loading {
    0% {
        transform: translateX(-100%);
    }

    100% {
        transform: translateX(320%);
    }

}
#nap_preloader.hide {
    opacity: 0;
    visibility: hidden;
    transform: scale(1.08);
    filter: blur(6px);
    transition:
        opacity .8s,
        transform .8s,
        filter .8s,
        visibility .8s;
}
.nap_gallery_section {
    position: relative;
    overflow: hidden;
}
.nap_gallery_card {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    background: var(--white);
    height: 100%;
    box-shadow: 0 12px 35px rgba(0, 0, 0, .08);
    transition: transform .45s ease, box-shadow .45s ease;
}

.nap_gallery_card:hover {
    transform: translateY(-10px);
    box-shadow:
        0 28px 60px rgba(0, 0, 0, .18);
}
.nap_gallery_image {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4/3;
}
.nap_gallery_image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:
        transform .9s cubic-bezier(.22, .61, .36, 1),
        filter .6s ease;

    display: block;
}
.nap_gallery_image::before {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 60%;
    height: 100%;
    background:
        linear-gradient(110deg,
            transparent,
            rgba(255, 255, 255, .45),
            transparent);
    transform: skewX(-25deg);
    z-index: 3;
    transition: left .8s ease;
}
.nap_gallery_card:hover .nap_gallery_image::before {
    left: 160%;
}
.nap_gallery_card:hover img {
    transform: scale(1.12);
    filter: brightness(.82);
}
.nap_gallery_overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    padding: 24px;
    background:
        linear-gradient(to top,
            rgba(0, 0, 0, .88),
            rgba(0, 0, 0, .45),
            transparent);
    opacity: 0;
    transition: .45s;
    z-index: 5;
}

.nap_gallery_card:hover .nap_gallery_overlay {
    opacity: 1;
}
.nap_gallery_content {
    transform: translateY(30px);
    transition: .45s;
}
.nap_gallery_card:hover .nap_gallery_content {
    transform: none;
}
.nap_common-title h3 {
    font-size: var(--fs-2xl);
    color: var(--text-primary);
}
.nap_common-title span {
    font-size: var(--fs-xl);
    color: var(--text-primary);
    font-family: "Dancing Script", cursive;
    font-weight: var(--fw-light);
}
.nap_gallery_date {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, .15);
    backdrop-filter: blur(10px);
    color: var(--white);
    font-size: var(--fs-xs);
    padding: 8px 16px;
    border-radius: 40px;
    margin-bottom: 14px;
}
.nap_gallery_date::before {
    content: "";
    width: 8px;
    height: 8px;
    background: #FFD54A;
    border-radius: 50%;
}
.nap_gallery_content h5 {
    color: var(--white);
    margin: 0;
    font-size: var(--fs-md);
    font-weight: var(--fw-medium);
    line-height: normal;
}
.nap_gallery_item {
    display: block;
    color: inherit;
    text-decoration: none;
}
.nap_gallery_card::after {
    content: "";
    position: absolute;
    inset: auto;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background:
        radial-gradient(circle,
            rgba(255, 213, 74, .18),
            transparent 70%);
    right: -80px;
    top: -80px;
    opacity: 0;
    transition: .45s;
}

.nap_gallery_card:hover::after {
    opacity: 1;
}
.nap_back_top {
    position: fixed;
    right: 25px;
    bottom: 25px;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--primary-blue);
    color: var(--white);
    text-decoration: none;
    cursor: pointer;
    overflow: hidden;
    z-index: 99;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
    transition:
        opacity .35s,
        visibility .35s,
        transform .35s,
        background .35s;
    box-shadow:
        0 15px 40px rgba(0, 0, 0, .18);

}
.nap_back_top.show {
    opacity: 1;
    visibility: visible;
    transform: none;
}
.nap_back_top:hover {
    background: var(--yellow);
    color: var(--primary-blue);
    transform:
        translateY(-6px) scale(1.06);
    box-shadow:
        0 20px 45px rgba(0, 0, 0, .22);
}
.nap_back_top::before {
    content: "";
    position: absolute;
    inset: -6px;
    border-radius: 50%;
    border: 2px solid rgba(255, 213, 74, .5);
    animation: napPulse 2s infinite;
}

@keyframes napPulse {
    0% {
        transform: scale(.9);
        opacity: 1;
    }

    70% {
        transform: scale(1.45);
        opacity: 0;
    }

    100% {
        opacity: 0;
    }
}
.nap_back_icon {
    position: absolute;
    width: 22px;
    height: 22px;
    z-index: 5;
    transition: .35s;
}
.nap_back_top:hover .nap_back_icon {
    transform: translateY(-3px);
}
.nap_back_progress {
    position: absolute;
    width: 60px;
    height: 60px;
    transform: rotate(-90deg);
}
.nap_back_progress_bg {
    fill: none;
    stroke: rgba(255, 255, 255, .15);
    stroke-width: 4;
}
.nap_back_progress_bar {
    fill: none;
    stroke: var(--yellow);
    stroke-width: 4;
    stroke-linecap: round;
    stroke-dasharray: 289;
    stroke-dashoffset: 289;
    transition: .2s linear;
}
.youvideo-wrapper {
    position: relative;
    width: 100%;
    padding-top: 75%;
    /*4:;
    3aspectratio(sameasyour318x238)*/
    overflow: hidden;
    margin-bottom: 24px;
    border-radius: 14px;
    -webkit-border-radius: 14px;
    -moz-border-radius: 14px;
    -ms-border-radius: 14px;
    -o-border-radius: 14px;
}
.youvideo-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
.nap_faculty_card {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 14px;
    text-decoration: none;
    box-shadow: 0 12px 35px rgba(0, 0, 0, .08);
    transition: .45s ease;
    background: #fff;
}
.nap_faculty_img {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4/5;
}
.nap_faculty_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition:
        transform .8s ease,
        filter .5s ease;
}
.nap_faculty_overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top,
            rgba(0, 0, 0, .94),
            rgba(0, 0, 0, .45) 45%,
            rgba(0, 0, 0, 0) 72%);
}
.nap_faculty_content {
    position: absolute;
    left: 24px;
    right: 24px;
    bottom: 18px;
    z-index: 10;
    transition: .45s;
}
.nap_faculty_department {
    display: inline-block;
    padding: 7px 18px;
    border-radius: 40px;
    background: rgba(255, 255, 255, .18);
    backdrop-filter: blur(12px);
    color: #fff;
    font-size: 13px;
    margin-bottom: 18px;
    transition: .4s;
}
.nap_faculty_content h3 {
    color: var(--white);
    font-size: var(--fs-xl);
    font-weight: var(--fw-medium);
    margin-bottom: 6px;
}
.nap_faculty_content h5 {
    color: var(--yellow);
    font-size: 15px;
    font-weight: 600;
    margin-bottom: 8px;
}
.nap_faculty_content p {
    margin: 0;
    color: rgba(255, 255, 255, .85);
    font-size: 15px;
}
.nap_faculty_card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 4px;
    background: var(--yellow);
    transition: .45s;
}
.nap_faculty_card:hover {
    transform: translateY(-12px);
    box-shadow: 0 28px 55px rgba(0, 0, 0, .18);
}
.nap_faculty_card:hover::before {
    left: 180%;
}
.nap_faculty_card:hover::after {
    width: 100%;
}
.nap_faculty_card:hover img {
    transform: scale(1.08);
}
.nap_faculty_card:hover .nap_faculty_content {
    bottom: 28px;
}
.nap_faculty_card:hover .nap_faculty_department {
    background: var(--yellow);
    color: var(--primary-blue);
}
.nap_faculty_card:hover .nap_faculty_content h5 {
    color: #fff;
}
.career-wrapper {
    min-height: 100vh;
    padding: 20px;
}
.career-card {
    width: 100%;
    padding: 35px;
    transition: 0.3s;
}
.career-label {
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 6px;
    display: block;
    color: var(--text-secondary);
}
.career-control {
    width: 100%;
    padding: 13px 15px;
    border-radius: 12px;
    border: 1px solid #eee;
    background: #fafafa;
    transition: 0.3s;
}
.career-control:focus {
    border-color: var(--primary-blue);
    background: var(--white);
    outline: none;
}
.career-file {
    padding: 4px;
}
.career-control.career-file::file-selector-button {
    border: none;
    background: var(--primary-blue);
    color: var(--white);
    padding: 8px 15px;
    border-radius: 5px;
    cursor: pointer;
}
.career-btn {
    background: var(--primary-blue);
    color: var(--white);
    padding: 12px 35px;
    border: none;
    border-radius: 0px;
    font-weight: 600;
    transition: 0.3s;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    -ms-border-radius: 0px;
    -o-border-radius: 0px;
}
.career-btn:hover {
    transform: translateY(-2px);
}
.alumni-form {
    width: 100%;
    padding: 35px;
    transition: 0.3s;
    padding-top: 0;
}
.alumni-form .form-section {
    margin: 30px 0;
}
.alumni-form .form-section .section-title-bg .section-title {
    display: block;
    font-size: 18px;
    font-weight: 500;
    color: var(--white);
    text-align: center;
}
.alumni-form .form-section .section-title-bg {
    padding: 6px;
    background-color: var(--primary-blue);
    margin-bottom: 20px;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    -ms-border-radius: 6px;
    -o-border-radius: 6px;
}
.alumni-form .form-section .form-fields .field-group .form-label,
.alumni-form .form-section .form-fields .field-group .form-control:focus {
    color: var(--text-secondary) !important;
}
.alumni-form .form-section .form-fields {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.alumni-form .form-section .form-fields .field-group {
    width: 100%;
    display: flex;
    flex-direction: column;
    margin: 6px 0;
}
.alumni-form .form-section .form-fields .field-group.field-full {
    width: 100%;
}
.alumni-form .form-section .form-fields .field-group .form-control,
.alumni-form .form-section .form-fields .field-group .form-select {
    width: 100%;
    padding: 12px 15px;
    border-radius: 10px;
    border: 1px solid #eee;
    background: #fafafa !important;
    transition: 0.3s;
    color: var(--text-secondary);
}
.alumni-form .form-section .form-fields .field-group .form-control:focus,
.alumni-form .form-section .form-fields .field-group .form-select:focus {
    color: var(--text-secondary);
    box-shadow: none !important;
    border-color: var(--primary-blue) !important;
    background: var(--white);
    outline: none;
}
.alumni-form .form-section .form-fields .field-group .form-control.file-input::file-selector-button {
    border: none;
    background: var(--primary-blue);
    color: var(--white);
    padding: 8px 15px;
    border-radius: 5px;
    cursor: pointer;
}
.alumni-form .form-section .form-check label {
    color: var(--text-secondary);
}
.nap_sitemap {
    position: relative;
    padding: 120px 0;
    background: #f7f8fc;
    overflow: hidden;
}
.nap_sitemap::before,
.nap_sitemap::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    background: linear-gradient(135deg, #f2b20025, #0b63ff15);
    filter: blur(5px);
}
.nap_sitemap::before {
    width: 320px;
    height: 320px;
    left: -140px;
    top: -140px;
}
.nap_sitemap::after {
    width: 260px;
    height: 260px;
    right: -100px;
    bottom: -100px;
}
.nap_sitemap_grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 35px;
    margin-top: 60px;
}
.nap_sitemap_card {
    position: relative;
    border-radius: 14px;
    padding: 35px;
    overflow: hidden;
    transition: transform .45s ease, box-shadow .45s ease, border-color .45s ease;
}
.nap_sitemap_card:hover {
    transform: translateY(-12px);
    border-color: transparent;
}
.nap_sitemap_card:hover::before {
    transform: scaleX(1);
}
.nap_sitemap_card h3 {
    margin-bottom: 25px;
    font-size: var(--fs-lg);
    color: var(--primary-blue);
    position: relative;
    padding-bottom: 15px;
}
.nap_sitemap_card h3::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 55px;
    height: 3px;
    border-radius: 50px;
    background: var(--yellow);
    transition: .4s;
}
.nap_sitemap_card:hover h3::after {
    width: 100px;
}
.nap_sitemap_card ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.nap_sitemap_card li {
    margin-bottom: 15px;
}
.nap_sitemap_card li:last-child {
    margin-bottom: 0;
}
.nap_sitemap_card a {
    position: relative;
    display: inline-flex;
    align-items: center;
    color: var(--text-secondary);
    text-decoration: none;
    transition: .35s;
    padding-left: 22px;
}
.nap_sitemap_card a::before {
    content: "";
    position: absolute;
    left: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--yellow);
    transition: .35s;
}
.nap_sitemap_card a:hover {
    color: var(--primary-blue);
    padding-left: 32px;
    font-weight: 600;

}
.nap_sitemap_card a:hover::before {
    width: 12px;
    height: 12px;
    background: var(--yellow);
    box-shadow: 0 0 0 6px rgba(1, 21, 56, 0.938);

}
.nap_council_card {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 14px;
    text-decoration: none;
    transition: .45s ease;
    box-shadow: 0 12px 35px rgba(0, 0, 0, .08);
}
.nap_council_img {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    aspect-ratio: 4 / 5;
}
.nap_council_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .8s ease, filter .5s ease;

}
.nap_council_overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(to top, rgba(0, 0, 0, .92), rgba(0, 0, 0, .45) 40%, rgba(0, 0, 0, 0) 70%);
    transition: .4s;
}
.nap_council_content {
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 8px;
    z-index: 10;
    transition: .45s;
}
.nap_council_post {
    display: inline-block;
    padding: 7px 18px;
    border-radius: 40px;
    background: rgba(255, 255, 255, .16);
    backdrop-filter: blur(12px);
    color: #fff;
    font-size: 14px;
    letter-spacing: .5px;
    margin-bottom: 18px;
    transition: .45s;
    -webkit-transition: .45s;
    -moz-transition: .45s;
    -ms-transition: .45s;
    -o-transition: .45s;
}
.nap_council_content h3 {
    margin: 0;
    color: var(--white);
    font-size: var(--fs-xl);
    font-weight: var(--fw-medium);
    line-height: 1.2;
    transition: .35s;
}
.nap_council_content p {
    display: block;
    margin-top: 8px;
    color: var(--text-light);
    font-size: var(--fs-base);
    transition: .35s;

}
.nap_council_card::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0px;
    height: 4px;
    background: var(--yellow);
    transition: .45s;
}
.nap_council_card:hover {
    transform: translateY(-12px);
    box-shadow: 0 30px 60px rgba(0, 0, 0, .18);
}
.nap_council_card:hover::after {
    width: 100%;
}
.nap_council_card:hover img {
    transform: scale(1.08);
}
.nap_council_card:hover .nap_council_content {
    bottom: 14px;
}
.nap_council_card:hover .nap_council_post {
    background: var(--yellow);
    color: var(--primary-blue);

}
.nap_contact {
    position: relative;
    padding: 120px 0;
    background: #f8f9fc;
    overflow: hidden;
}
.nap_contact::before {
    content: "";
    position: absolute;
    width: 380px;
    height: 380px;
    left: -170px;
    top: -170px;
    border-radius: 50%;
    background: rgba(255, 193, 7, .08);
}
.nap_contact::after {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    right: -220px;
    bottom: -220px;
    border-radius: 50%;
    background: rgba(0, 77, 153, .05);
}
.nap_contact_info {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 22px;
    height: 100%;
}
.nap_contact_card {
    position: relative;
    display: flex;
    align-items: center;
    gap: 20px;
    background: var(--white);
    padding: 25px;
    border-radius: 20px;
    overflow: hidden;
    transition: .45s;

}
.nap_contact_card::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 4px;
    height: 0;
    background: var(--yellow);
    transition: .45s;
}
.nap_contact_card:hover {
    transform: translateY(-10px);
}
.nap_contact_card:hover::before {
    left: 180%;
}
.nap_contact_card:hover::after {
    height: 100%;
}
.nap_contact_icon {
    width: 72px;
    height: 72px;
    min-width: 72px;
    border-radius: 50%;
    background: var(--primary-blue);
    color: var(--white);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    transition: .5s;
}
.nap_contact_card:hover .nap_contact_icon {
    background: var(--yellow);
    color: var(--primary-blue);
    transform:        rotate(360deg) scale(1.08);
    -webkit-transform:        rotate(360deg) scale(1.08);
    -moz-transform:        rotate(360deg) scale(1.08);
    -ms-transform:        rotate(360deg) scale(1.08);
    -o-transform:        rotate(360deg) scale(1.08);
}
.nap_contact_text span {
    display: block;
    color: var(--yellow);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1px;
    margin-bottom: 6px;
    text-transform: uppercase;
}
.nap_contact_text h4 {
    color: var(--primary-blue);
    margin-bottom: 8px;
    font-size: var(--fs-md);
}
.nap_contact_text p {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.8;
}
.nap_contact_social {
    margin-top: 12px;
    padding: 30px;
    border-radius: 20px;
    background: var(--primary-blue);
}
.nap_contact_social h5 {
    color: var(--white);
    margin-bottom: 20px;
}
.nap_contact_social_links {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}
.nap_contact_social_links a {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .12);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    text-decoration: none;
    transition: .45s;
}
.nap_contact_social_links a:hover {
    background: var(--yellow);
    color: var(--primary-blue);
    transform:
        translateY(-5px) rotate(8deg);
}
.nap_contact_form {
    background: var(--white);
    padding: 45px;
    border-radius: 14px;
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.034);
    height: 100%;
    -webkit-border-radius: 14px;
    -moz-border-radius: 14px;
    -ms-border-radius: 14px;
    -o-border-radius: 14px;
}
.nap_contact_form_title {
    margin-bottom: 35px;
}
.nap_contact_form_title span {
    color: var(--yellow);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: var(--fs-sm);
    font-weight: var(--fw-medium);
}
.nap_contact_form_title h3 {
    color: var(--primary-blue);
    margin: 10px 0;
}
.nap_contact_form_title p {
    margin: 0;
    color: var(--text-secondary);
}
.nap_contact_input {
    position: relative;
}
.nap_contact_input label {
    display: block;
    margin-bottom: 10px;
    font-weight: 600;
    color: var(--text-secondary);
}
.nap_contact_input label span {
    color: #dc3545;
}
.nap_contact_input .form-control {
    width: 100%;
    padding: 12px 15px;
    border-radius: 10px;
    border: 1px solid #eee;
    background: #fafafa !important;
    transition: 0.3s;
    color: var(--text-secondary);
    transition: .35s;
}
.nap_contact_input textarea {
    min-height: 170px;
    resize: none;
}
.nap_contact_input .form-control:focus {
    color: var(--text-secondary);
    box-shadow: none !important;
    border-color: var(--primary-blue) !important;
    background: var(--white);
    outline: none;
}
.nap_contact_input .form-control::placeholder {
    color: var(--text-secondary);
}
.nap_contact_map {
    position: relative;
    margin-top: 60px;
    overflow: hidden;
    border-radius: 24px;
    box-shadow:
        0 25px 60px rgba(0, 0, 0, .10);
    transition:
        transform .45s ease,
        box-shadow .45s ease;
}
.nap_contact_map::before {
    content: "";
    position: absolute;
    inset: 0;
    border: 2px solid transparent;
    border-radius: 14px;
    transition: .45s;
    z-index: 2;
    pointer-events: none;
    -webkit-border-radius: 14px;
    -moz-border-radius: 14px;
    -ms-border-radius: 14px;
    -o-border-radius: 14px;
}
.nap_contact_map:hover::before {
    border-color: var(--yellow);
}

.nap_contact_map:hover::after {
    left: 180%;
}
.nap_contact_map:hover {
    transform: translateY(-8px);
    box-shadow:
        0 35px 70px rgba(0, 0, 0, .14);
}
.nap_contact_map iframe {
    width: 100%;
    height: 520px;
    border: 0;
    display: block;
    filter: grayscale(.15);
    transition:
        transform .8s ease,
        filter .5s ease;

}
.nap_contact_map:hover iframe {
    transform: scale(1.03);
    filter: grayscale(0);
}
.nap_contact_shape {
    position: absolute;
    border-radius: 50%;
    z-index: 0;
    animation:
        napCircle 8s ease-in-out infinite;

}
.nap_contact_shape_one {
    width: 18px;
    height: 18px;
    background: var(--yellow);
    top: 8%;
    left: 10%;
}
.nap_contact_shape_two {
    width: 26px;
    height: 26px;
    background: rgba(0, 68, 140, .10);
    right: 12%;
    top: 18%;
    animation-delay: 2s;
}
.nap_contact_shape_three {
    width: 14px;
    height: 14px;
    background: var(--yellow);
    bottom: 14%;
    left: 16%;
    animation-delay: 4s;
}
.nap_contact_shape_four {
    width: 32px;
    height: 32px;
    background: rgba(255, 193, 7, .15);
    bottom: 8%;
    right: 8%;
    animation-delay: 1s;

}
@keyframes napCircle {
    0% {
        transform:
            translateY(0) rotate(0deg);
    }
    50% {
        transform:
            translateY(-18px) rotate(180deg);
    }
    100% {
        transform: translateY(0) rotate(360deg);
        -webkit-transform: translateY(0) rotate(360deg);
        -moz-transform: translateY(0) rotate(360deg);
        -ms-transform: translateY(0) rotate(360deg);
        -o-transform: translateY(0) rotate(360deg);
}
}
.nap_contact_form .nap_place_btn_yellow {
    min-width: 220px;
    justify-content: center;
}
.nap_place_btn_wrap{
    display:inline-flex;
}
.nap_place_btn_yellow{
    position:relative;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    padding:18px 34px;
    border:none;
    border-radius:60px;
    background:var(--primary-blue);
    color:var(--text-white);
    font-size:var(--fs-base);
    font-weight:var(--fw-medium);
    cursor:pointer;
    overflow:hidden;
    transition:
        transform .35s ease,
        background .35s ease,
        color .35s ease,
        box-shadow .35s ease;

}
.nap_place_btn_yellow::before{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    width:0;
    height:0;
    border-radius:50%;
    background:rgba(255,255,255,.25);
    transform:translate(-50%,-50%);
    transition:
        width .45s ease,
        height .45s ease;
    z-index:1;
    pointer-events:none;
}
.nap_place_btn_yellow span,
.nap_place_btn_yellow svg{
    position:relative;
    z-index:2;
}
.nap_place_btn_yellow svg{
    width:20px;
    height:20px;
    transition:transform .35s ease;
}
.nap_place_btn_yellow:hover{
    background:var(--yellow);
    color:var(--text-primary);
    transform:translateY(-5px);
    box-shadow:
        0 18px 40px rgba(0,0,0,.18);
}
.nap_place_btn_yellow:hover::before{
    width:320px;
    height:320px;
}
.nap_place_btn_yellow:hover svg{
    transform:translateX(6px);
    z-index: 9;
}
.nap_place_btn_yellow:active{
    transform:translateY(-2px);
}
