:root {
    --color-primary: #00AEEF;
    --color-secondary: #0451A5;
    --hover-color: #0c94c5;
}


.header-btn {
    padding: 10px 25px;
    border-radius: 30px;
    border: 1px solid var(--color-primary);
    color: white;
    background-color: var(--color-primary);
    text-decoration: none;
}

.header-btn:hover {
    background: #0d6efd;

}

.text-white {
    color: white;
}

.bg-primary {
    background-color: var(--color-primary);
}

.rounded-10 {
    border-radius: 10px;
}

.feature-point {
    display: flex;
    align-items: center;

}

.feature-point i {
    font-size: 28px;
    display: block;
    margin-right: 10px;
}

.feature-point p {
    color: #4a4242;
}

.tab-content figure {
    height: 500px;
}

.tab-content figure img {
    height: 100%;
    border-radius: 12px;
}

.ri-fb-prev,
.ri-fb-next {
    background-color: var(--color-primary);
    border-radius: 12px;
}

.ri-fb-prev i,
.ri-fb-next i {
    color: white;
}

.fixed-image {
    width: 540px;
    height: 540px;
    object-fit: cover;
    /* Ensures the image covers the container without distortion */
}

html {
    scroll-behavior: smooth;
}

@media (max-width: 576px) {
    .tab-content figure {
        height: auto;
    }
}

.floating-image {
    position: absolute !important;
    top: 82%;
    left: -37px;
    /* move outside main image */
    width: 220px;
    z-index: 5;

    border-radius: 6px;
    overflow: hidden;

    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25);
    background: #fff;
}

.floating-image1 {
    position: absolute !important;
    top: 82%;
    top: -12%;
    left: 360px;
    z-index: 5;

    border-radius: 6px;
    overflow: hidden;

    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.25);
    background: #fff;
}

.floating-image img {
    width: 100%;
    display: block;
}

/* Responsive tweak */
@media (max-width: 991px) {
    .floating-image {
        left: 0;
        top: -40px;
        width: 180px;
    }
}

.ri-fb-reel-card {
    height: 500px;
    /* change as needed */
    max-width: 360px;
    overflow: hidden;
    border-radius: 14px;
}

.ri-fb-reel-card iframe {
    width: 100% !important;
    height: 100% !important;
}

@media (max-width: 768px) {
    .ri-fb-reel-card {
        max-width: 100%;
    }
}

.ri-fb-reel-card {
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15);
    transition: transform .3s ease;
}

.ri-fb-reel-card:hover {
    /* transform: translateY(-6px); */
}

.img1 {
    height: 100px;
}

.img1 img {
    height: 100%;
    object-fit: cover;
}

/* chatbot */
.chatbot-float {
    position: fixed;
    bottom: 70px;
    right: 25px;
    width: 60px;
    height: 60px;
    background-color: var(--color-secondary);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    cursor: pointer;
    z-index: 9999;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.25);
    animation: pulse 2.5s infinite;
}

/* Hover stops animation */
.chatbot-float:hover {
    animation: none;
    transform: scale(1.1);
}

/* Pulse / Wave Effect */
@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(0, 123, 255, 0.7);
    }

    70% {
        box-shadow: 0 0 0 18px rgba(0, 123, 255, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(0, 123, 255, 0);
    }
}

/* share and social icon button */
.quick-action {
    position: fixed;
    bottom: 70px;
    left: 25px;
    z-index: 9999;
}

/* Main Button */
.quick-action-main {
    width: 60px;
    height: 60px;
    background: var(--color-primary);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    cursor: pointer;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.25);
    transition: 0.3s;
}

/* Icon container */
.quick-action-items {
    position: absolute;
    bottom: 70px;
    left: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: 0.3s ease;
}

/* Show on hover */
.quick-action:hover .quick-action-items {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

/* Individual icons */
.quick-action-items a {
    width: 48px;
    height: 48px;
    background: #fff;
    color: var(--color-secondary);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
    transition: 0.3s;
}

.quick-action-items a:hover {
    background: var(--color-primary);
    color: #fff;
}

/* Rotate main icon on hover */
.quick-action:hover .quick-action-main {
    transform: rotate(90deg);
}

/* Subtle vibrate animation */
@keyframes fab-vibrate {
    0% {
        transform: translateX(0);
    }

    15% {
        transform: translateX(-2px);
    }

    30% {
        transform: translateX(2px);
    }

    45% {
        transform: translateX(-2px);
    }

    60% {
        transform: translateX(2px);
    }

    75% {
        transform: translateX(-1px);
    }

    100% {
        transform: translateX(0);
    }
}

/* Apply vibration to main button */
.quick-action-main {
    animation: fab-vibrate 6s infinite;
}

/* Stop vibration when user interacts */
.quick-action:hover .quick-action-main {
    animation: none;
}

.share-wrapper {
    position: relative;
}

.share-socials {
    position: absolute;
    top: 50%;
    left: 60px;
    /* move to right side */
    transform: translateY(-50%) translateX(-10px);

    display: flex;
    gap: 10px;

    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.share-wrapper:hover .share-socials {
    opacity: 1;
    visibility: visible;
    transform: translateY(-50%) translateX(0);
}

.share-socials a {
    width: 42px;
    height: 42px;
    background: #fff;
    color: var(--color-secondary);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2);
    transition: 0.3s;
}

.share-socials a:hover {
    background: var(--color-primary);
    color: #fff;
}

.site-logo {
    width: 150px;
}

.hadding1 p {
    color: var(--paragraph-color, rgba(8, 17, 13, 0.60));
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    margin-bottom: 0px;
}

.end-footer1 {
    font-size: 15px !important;
}

.copyright2 {
    border-top: 1px solid #CCCFD6;
    padding: 16px 0;
    margin-top: 40px;
}

.footer-bg-img {
    width: 83% !important;
}

.fixed-cta-wrap {
    position: relative;
    background-image: url(../images/rosetta/image.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    padding: 18px 20px;
    overflow: hidden;
    margin-bottom: 80px;
}

.fixed-cta-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0.45));
    z-index: 1;
}

.fixed-cta-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 2;
    max-width: 1100px;
    margin: 0 auto;
    text-align: center;
    color: #ffffff;
}

.fixed-cta-text h2 {
    font-size: 38px;
    font-weight: 700;
    margin-bottom: 15px;
}

.fixed-cta-text p {
    font-size: 18px;
    opacity: 0.9;
    margin-bottom: 35px;
}

.theme-btn1 {
    position: relative;
    display: inline-block;
    font-size: 18px;
    line-height: 26px;
    font-family: 'Cabin', sans-serif;
    font-weight: 600;
    color: #fff !important;
    text-align: center;
    border-radius: 2px;
    padding: 16px 24px;
    z-index: 1;
    background: var(--color-primary);
    border-radius: 5px;
}

.bottom-minus-200px {
    bottom: -200px;
}

.about-btn {
    margin-right: 12px;
}

.cta-section {
    position: relative;
    background-image: url(../images/rosetta/image.png);
    padding: 18px 0;
    /* min-height: 300px; */
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.cta-content1 {
    position: relative;
    z-index: 1;
}

.hadding5-w h2 {
    color: #FFF;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 48px;
}

.space16 {
    height: 16px;
}

.hadding5-w p {
    color: #FFF;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}

.theme-btn1 {
    position: relative;
    display: inline-block;
    font-size: 18px;
    line-height: 26px;
    font-family: 'Cabin', sans-serif;
    font-weight: 600;
    color: #fff !important;
    text-align: center;
    border-radius: 2px;
    padding: 16px 24px;
    z-index: 1;
    background: var(--color-primary);
    border-radius: 5px;
}

.cta-section::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.3));
    z-index: 1;
}

.cta-text-area {
    position: relative;
    z-index: 1;
}

.ri-topbar.hide {
    transform: translateY(-100%);
}

.navbar.navbar1 {
    top: 0px;
}

.fixed-image {
    width: 540px;
    height: 540px;
    object-fit: cover;
    /* Ensures the image covers the container without distortion */
}

.form-btn button {
    padding: 10px 25px;
    border-radius: 30px;
    border: 1px solid var(--color-primary);
    color: white;
    background-color: var(--color-primary);
}

.bg-gradient-aztec-green {
    background-image: linear-gradient(to right bottom,
            #0451A5,
            #0b6fbf,
            #128cd6,
            #00AEEF);

}

.testimonials-style-12 {
    background: white;
    padding: 12px;
    border-radius: 8px;
}

.testimonials-style-12 .swiper-slide {
    /* height: 420px; */
    /* control height */
    display: flex;
    align-items: center;
    justify-content: center;

}

.testimonials-style-12 .swiper-slide img {

    width: 100%;
    height: 100%;
    object-fit: contain;
    /* NO CROP */
}

header,
nav,
.ri-header,
.ri-container,
.navbar-collapse {
    overflow: visible;
}

.ri-header,
.ri-header * {
    overflow: visible !important;
}

#scrollToTop {
    position: fixed;
    bottom: 50%;
    right: 30px;
    width: 45px;
    height: 45px;
    border: none;
    border-radius: 50%;
    border: 2px solid #0d6efd;
    /* change to your brand color */
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 9999;

    transition: opacity 0.3s, transform 0.3s;
}

#scrollToTop:hover {
    background-color: #0d6efd;
    color: white;
}

#scrollToTop:hover i {
    color: white;
}

#scrollToTop.show {
    display: flex;
    transition: 0.3s all ease-out;
}

.image-hover {
    position: relative;
    display: block;
    overflow: hidden;
}

.image-hover img {
    display: block;
    width: 100%;
}

/* Overlay */
.image-hover::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.35);
    opacity: 0;
    transition: opacity 0.3s ease;
}

/* Icon */
.image-hover .hover-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.8);
    width: 50px;
    height: 50px;
    border: 2px solid #fff;
    border-radius: 50%;
    color: #fff;
    font-size: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all 0.3s ease;
    pointer-events: none;
}

/* Hover state */
.image-hover:hover::before {
    opacity: 1;
}

.image-hover:hover .hover-icon {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

.popular-post-sidebar li figure {
    width: 190px;
    height: auto;
}

.border1 {
    border-bottom: 1px solid #CCCFD6;
    padding: 5px;
}

@media (max-width: 575px) {
    .popular-post-sidebar li figure {
        width: 100%;
    }
}

.contact-img img {
    border-radius: 12px;
}

#secondary-nav {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.text-center11 {
    justify-content: end;
}

.form-bg-color {
    background-image: linear-gradient(to right bottom, #0451A5, #0b6fbf, #128cd6, #00AEEF);
}

.form-icon {
    color: white;
}

/* Placeholder color - white */
.form-control::placeholder {
    color: #ffffff;
    opacity: 1;
    /* important for Firefox */
}

/* Browser support */
.form-control::-webkit-input-placeholder {
    color: #ffffff;
}

.form-control:-ms-input-placeholder {
    color: #ffffff;
}

.form-control::-ms-input-placeholder {
    color: #ffffff;
}

.end-footer {
    background-image: linear-gradient(to right bottom, #0451A5, #0b6fbf, #128cd6, #00AEEF);
}

.end-footer p {
    color: white;
}

.box-shadow-hover {
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);

    transition: all 0.3s ease;
}

.box-shadow-hover:hover {
    transform: translateY(-5px);

}

.box-shadow-hover1 {
    padding: 12px;
    transition: all 0.3s ease;
}

.box-shadow-hover1:hover {
    border-radius: 12px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.09);
    transform: translateY(-5px);
}

.feature-box-content span {
    transition: 0.3s all ease-out;
}

.box-shadow-hover:hover .feature-box-content span {
    color: #0451A5;
}

.country-btn {
    background: white !important;
    color: #0451A5 !important;
    border-color: #0451A5 !important;
}

.blog-image {
    height: 410px;
}

.blog-image a img {
    object-fit: contain;
}

.badge img {
    height: 200px;
}

.font {
    font-size: 24px;
    margin-bottom: 5px;
}

.font-xl {
    font-size: 60px;
}

.line-height {
    line-height: 58px;
}

.exam-section {
    display: none;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.4s ease;
}

.exam-section.active {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

html {
    scroll-behavior: smooth;
}

section[id^="tab"] {
    scroll-margin-top: 120px;
}

.page-title::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.4));
    z-index: 1;
}

.content1 {
    position: relative;
    z-index: 1;
}

.btn.btn-dark-gray.btn-dark-gray11 {
    background-color: #0451A5;
    border-color: #0451A5;
}

.font-1 {
    font-size: 18px;
}

.padding1.btn.btn-dark-gray {
    padding: 17px 25px;
}

.border-area {
    border: 1px solid #CCCFD6;
    border-radius: 12px;
    padding: 20px;
}

.counselling {
    font-size: 29px !important;
    color: #0094d9 !important;
}

.blog-side-image .blog-box:hover .blog-image11 .blog-post-image-overlay {
    opacity: .4;
}

.blog-side-image .blog-box .blog-image11 .blog-post-image-overlay {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: .6s cubic-bezier(.5, 1, .89, 1);
    transition: .6s cubic-bezier(.5, 1, .89, 1);
}

.font2 {
    font-size: 16px;
}

/* branch */
/* Container spacing */
.aapoiment-left-area-thumbnail {
    padding: 10px 0;
}

/* Branch column spacing */
.branch12 {
    margin-bottom: 20px;
}

/* Address card */
.tmp-address {
    background: #ffffff;
    border-radius: 12px;
    padding: 25px 30px;
    border: 1px solid #e9e9e9;
    transition: all 0.35s ease;
    position: relative;
}

/* Hover effect */
.tmp-address:hover {
    box-shadow: 0 18px 40px rgba(0, 0, 0, 0.08);
    transform: translateY(-4px);
    border-color: #0C94C5;
}

/* Inner content */
.tmp-address .inner {
    display: flex;
    flex-direction: column;
}

/* Branch title */
.tmp-address .title {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #1a1a1a;
}

/* Address text */
.tmp-address p {
    font-size: 14px;
    line-height: 1.7;
    color: #555;
    margin-bottom: 0;
}

/* Icons */
.tmp-address p i {
    color: #0C94C5;
    margin-right: 6px;
    font-size: 15px;
    vertical-align: middle;
}

/* Phone & email links */
.tmp-address a {
    color: #1059A9;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.3s ease;
}

.tmp-address a:hover {
    color: #0C94C5;
    text-decoration: underline;
}

/* Responsive */
@media (max-width: 767px) {
    .tmp-address {
        padding: 20px;
    }

    .tmp-address .title {
        font-size: 16px;
    }
}

a {
    text-decoration: none;
}

.gallery-item {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 12px;
}

.gallery-item img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.gallery-item::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    opacity: 0;
    transition: 0.3s ease;
}

.gallery-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.6);
    color: #fff;
    font-size: 32px;
    opacity: 0;
    z-index: 2;
    transition: 0.3s ease;
}

.gallery-item:hover img {
    transform: scale(1.08);
}

.gallery-item:hover::after,
.gallery-item:hover .gallery-icon {
    opacity: 1;
}

.gallery-item:hover .gallery-icon {
    transform: translate(-50%, -50%) scale(1);
}

.input11::placeholder,
.textarea11::placeholder {
    color: white !important;
    opacity: 1;
}

/* course finder */
:root {
    --primary-color: #00AEEF;
    --primary-hover: #0395ca;
    --primary: #00AEEF;
    --gray: #e5e7eb;
    --text: #111827;
}

.card11 {
    background: #fff;
    width: 100%;
    /* max-width: 900px; */
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
    margin-bottom: 40px;
}

.card.card1 {
    padding: 0px;
}

/* h1 {
    text-align: center;
    margin-bottom: 8px;
} */

.subtitle {
    text-align: left;
    color: #555;
    margin-bottom: 40px;
}

.stepper {
    display: flex;
    align-items: center;
    margin-bottom: 40px;
    width: 100%;
}

.step {
    display: flex;
    align-items: center;
    flex: 1;
    position: relative;
}

.circle {
    width: 30px;
    height: 30px;
    border-radius: 5px;
    border: 2px solid var(--gray);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    background: #fff;
    color: #999;
    font-size: 13px;
    transition: all .3s ease;

}

.circle.active,
.circle.completed {
    border-color: var(--primary);
    background: var(--primary);
    color: #fff;
}

.line {
    height: 4px;
    flex: 1;
    background: var(--gray);
    /* margin: 0 8px; */
    /* border-radius: 2px; */
    overflow: hidden;
}

.line-fill {
    height: 100%;
    width: 0%;
    background: var(--primary);
    transition: width .4s ease;
}

.question {
    font-size: 18px;
    margin-bottom: 16px;
}

.select11 {
    width: 100%;
    padding: 14px;
    border-radius: 12px;
    border: 1px solid #d1d5db;
    font-size: 16px;
    background-position: right 16px center;
}

.select11 {
    width: 100%;
    padding: 14px 48px 14px 14px;
    border-radius: 12px;
    border: 1px solid #d1d5db;
    font-size: 16px;

    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 14px;
}

.actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 40px;
}

.button11 {
    padding: 14px 28px;
    border-radius: 999px;
    border: none;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .2em;
    cursor: not-allowed;
    background: #c7c3fa;
    color: #fff;
    transition: background .3s ease;
}

button.enabled {
    background: var(--primary);
    cursor: pointer;
}

/* Primary buttons */
.btn-primary-custom {
    background-color: var(--primary-color);
    color: #ffffff;
    border: none;
}

.tab-link {
    text-decoration: none;
    color: #6c757d;
    border-radius: 0.375rem 0.375rem 0 0;
    cursor: pointer;
}

.tab-link:hover {
    color: inherit;
    /* background: transparent; */
}

.tab-active {
    background-color: var(--primary-color);
    color: #fff !important;
}

.btn-primary-custom:hover {
    background-color: var(--primary-hover);
}

/* .btn:hover {
    color: white !important;
    background-color: var(--primary-hover);
    border-color: var(--primary-hover);
} */


/* Primary text links */
.text-primary-custom {
    color: var(--primary-color);
    text-decoration: none;
}

.text-primary-custom:hover {
    text-decoration: underline;
}

/* Tab active state */
.tab-active {
    background-color: var(--primary-color);
    color: #ffffff;
}

.sticky-box {
    position: sticky;
    top: 5.5rem;
}

.rounded-xl {
    border-radius: 0.75rem;
}

select:focus,
.form-select:focus,
input:focus,
textarea:focus {
    outline: none;
    /* removes default blue border */
    box-shadow: none;
    /* removes focus shadow */
    border-color: #ced4da;
    /* optional: reset to normal border color */
}

.list {
    display: flex;
    list-style: none;
}

.question-wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin: 25px 0;
}

.question-box label {
    font-weight: 600;
    margin-bottom: 8px;
    display: block;
}

.question-box select,
.question-box input {
    width: 100%;
    padding: 14px;
    border-radius: 12px;
    border: 1px solid #d1d5db;
    font-size: 16px;
}

@media (max-width: 768px) {
    .question-wrapper {
        grid-template-columns: 1fr;
    }
}

@media(max-width:576px) {
    .intake {
        margin-bottom: 12px;
    }
}

a {
    text-decoration: none !important;
}

.text-gray {
    color: var(--medium-gray);
}

/* modal */
.custom-modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.custom-modal-overlay.active {
    display: flex;
}

.custom-modal {
    background: white;
    width: 100%;
    max-width: 530px;
    /* modal-lg */
    border-radius: 12px;
    animation: modalFade 0.3s ease;
}

.custom-modal-header {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 8px 20px 5px;
    background-image: linear-gradient(to right bottom, #0451A5, #0b6fbf, #128cd6, #00AEEF);
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.custom-close-btn {

    background: none;
    border: none;
    font-size: 35px;
    color: white;
    cursor: pointer;
}

.custom-modal-body {
    /* padding: 0px 12px 12px; */
}

.custom-padding {
    padding: 7% 14%;
}

@keyframes modalFade {
    from {
        transform: translateY(-20px);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.font1 {
    font-size: 39px;
}

.list-style-02 li {
    display: flex;
    align-items: center;
    padding-left: 10px;
    transition: all 0.3s ease;
    border-radius: 6px;
}

.list-style-02 li a {
    color: #333;
    text-decoration: none;
    transition: color 0.3s ease;
    position: relative;
}



/* Icon animation */
.list-style-02 li i {
    transition: transform 0.3s ease, color 0.3s ease;
}

/* Hover effects */
.list-style-02 li:hover {
    background: rgba(12, 148, 197, 0.08);
}

.list-style-02 li:hover a {
    color: #0C94C5;
}

.list-style-02 li:hover a::after {
    width: 100%;
}

.list-style-02 li:hover i {
    transform: translateX(6px);
    color: #0C94C5;
}

.manager-img {
    padding: 12px;
    background-color: white;
    border-radius: 12px;
}


/* team */

.team-section {
    padding: 80px 20px;
}

.team-title {
    text-align: center;
    font-size: 34px;
    font-weight: 600;
    margin-bottom: 50px;
    color: #222;
}

/* Team Card */
.team-card {
    position: relative;
    overflow: hidden;
    border-radius: 6px;
    /* box-shadow: 0 12px 30px rgba(0, 0, 0, 0.05); */

}

.team-card img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.team-card:hover img {
    transform: scale(1.1);
}

/* Overlay */
.team-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(12, 148, 197, 0.9),
            rgba(16, 89, 169, 0.75));
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    padding-bottom: 30px;
    opacity: 0;
    transition: all 0.4s ease;
    text-align: center;
}

.team-card:hover .team-overlay {
    opacity: 1;
}

.team-overlay h4 {
    color: #fff;
    font-size: 20px;
    font-weight: 600;
    margin: 0;
}

.team-overlay span {
    color: #e3f6ff;
    font-size: 14px;
    margin-top: 4px;
    letter-spacing: 0.5px;
}

/* Swiper navigation */
.swiper-button-next,
.swiper-button-prev {
    color: #1059A9;
}

/* Responsive */
@media (max-width: 768px) {
    .team-card img {
        height: 320px;
    }
}

.list11 {
    text-align: left;
    padding: 8px;
}

/* course card */
.compact-course-card {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 14px 16px;
    margin-bottom: 14px;
    background: #fff;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
    font-family: system-ui, sans-serif;
}

.course-row {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    padding: 15px;
}

/* Logo */
.course-logo img {
    width: 70px;
    height: 70px;
    object-fit: contain;
}

/* Info */
.course-info {
    flex: 1;
}

.course-info h4 {
    font-size: 16px;
    margin: 0 0 4px;
    line-height: 1.25;
}

.meta-line {
    font-size: 14px;
    margin-bottom: 4px;
}

.country {
    color: #ef4444;
    font-weight: 600;
    margin-left: 4px;
}

.details span,
.fees span {
    font-size: 13px;
    color: #555;
    margin-right: 10px;
}

.scholar {
    color: #16a34a;
    font-weight: 600;
}

/* Intake */
.intake {
    margin-top: 6px;
    font-size: 13px;
}

.tag {
    background: #0451A5;
    color: #fff;
    padding: 5px 12px;
    border-radius: 6px;
    font-size: 12px;
    margin-left: 6px;
}

/* Scores */
.course-scores {
    border-radius: 12px;
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-size: 13px;
    min-width: 120px;
}

.course-scores b {
    font-weight: 600;
}

/* Responsive */
@media (max-width: 900px) {
    .course-row {
        flex-direction: column;
    }

    .course-scores {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 10px;
    }
}

.bg-blue {
    background: #00AEEF;

}

.font-small {
    font-size: 18px;
}

.course-logo {
    border: 1px solid #CCCFD6;
    border-radius: 5px;
    padding: 5px;
}

.text-bg-wrap {
    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.75),
            rgba(0, 0, 0, 0.35),
            rgba(0, 0, 0, 0));
    border-radius: 6px;
}

.alt-font1 {
    font-size: 40px;
}

.alt-font2 {
    font-size: 25px;
}

.footer-image-box img {
    max-height: 105px;
    background: #fff;
    padding: 6px;
    border-radius: 6px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
    transition: 0.3s ease;
}

.footer-image-box img:hover {
    transform: translateY(-3px);
}

.swiper-pagination {
    display: none;
}

/* Scroll wrapper */
.modern-table-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border-radius: 12px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

/* Table styling */
.modern-table {
    width: 100%;
    min-width: 700px;
    /* Important for horizontal scroll */
    border-collapse: collapse;
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
}

/* Header */
.modern-table thead {
    background: #00AEEF;
    /* dark modern header */
    color: #fff;
}

.modern-table th {
    padding: 10px;
    text-align: left;
    font-weight: 600;
    font-size: 15px;
}

/* Body */
.modern-table td {
    padding: 16px 18px;
    border-bottom: 1px solid #f1f1f1;
    font-size: 15px;
    color: #444;
}

/* Zebra effect */
.modern-table tbody tr:nth-child(even) {
    background: #f9fafc;
}

/* Hover effect */
.modern-table tbody tr:hover {
    background: #eef3ff;
    transition: 0.3s ease;
}


/* courser finder */
.course-finder-section {
    /* padding: 80px 20px; */
    /* background: linear-gradient(135deg, #eef2ff, #f8fafc); */
    /* display: flex;
    justify-content: center; */

}

.course-finder-card {
    width: 100%;
    max-width: 1100px;
    /* padding: 50px; */
    border-radius: 25px;
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(15px);
    /* box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08); */
}

.finder-header {
    text-align: center;
    margin-bottom: 40px;
}

.finder-header h2 {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 10px;
}

.finder-header p {
    color: #666;
    font-size: 16px;
}

.finder-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 25px;
}

.filter-heading1 {
    grid-column: 1 / -1;
}

.filter-heading {

    margin: 10px 0 0 0;
    font-size: 1.7rem;
    font-weight: 600;
    color: #333;

}


.form-group {
    position: relative;

    grid-column: span 2;

}

.half-field {
    grid-column: span 1;
}

/* Full width search */
.full-width {
    grid-column: 1 / -1;
}

.border-none {
    border: none;
}

.form-group select,
.form-group input {
    width: 100%;
    padding: 16px 15px;
    border-radius: 14px;
    border: 1px solid #ddd;
    font-size: 15px;
    background: #fff;
    outline: none;
    transition: 0.3s ease;

}

.form-group label {
    position: absolute;
    left: 15px;
    top: 16px;
    color: #0451A5;
    font-size: 14px;
    pointer-events: none;
    transition: 0.3s ease;
    background: #fff;
    padding: 0 5px;
    font-weight: 500;

}

.form-group .border {
    border: 1px solid #c7c3fa;
    border-radius: 5px;
    padding: 0px 8px;
}

.form-group select:focus,
.form-group input:focus {
    border-color: #00AEEF;
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1);
}

.form-group select:focus+label,
.form-group input:focus+label,
.form-group select:not([value=""])+label,
.form-group input:not(:placeholder-shown)+label {
    top: -15px;
    font-size: 12px;
    color: #0451A5;
}

.full-width {
    grid-column: 1 / -1;
}

.finder-actions {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 40px;
}

.btn-search {
    padding: 10px 25px;

    border-radius: 30px;
    border: none;
    background: linear-gradient(90deg, #4f46e5, #6366f1);
    color: #fff;
    font-weight: 600;
    cursor: pointer;
    transition: 0.3s ease;
}

.btn-search:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 20px rgba(79, 70, 229, 0.3);
}

.btn-reset {
    padding: 10px 25px;
    border-radius: 30px;
    border: 1px solid #ccc;
    background: transparent;
    cursor: pointer;
    transition: 0.3s ease;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 14px;

}

.btn-reset:hover {
    background: #f1f1f1;
}

@media (max-width: 1200px) {
    .finder-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .form-group {
        grid-column: span 1;
    }

    .half-field {
        grid-column: span 1;
    }
}


@media (max-width: 768px) {
    .finder-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .form-group {
        grid-column: span 1;
    }

    .half-field {
        grid-column: span 1;
    }

    .finder-header h2 {
        font-size: 24px;
    }

    .course-finder-card {
        padding: 30px 20px;
    }
}

/* Mobile */
@media (max-width: 480px) {
    .finder-grid {
        grid-template-columns: 1fr;
    }

    .form-group,
    .half-field,
    .full-width {
        grid-column: span 1;
    }

    .finder-actions {
        flex-direction: column;
    }

    .btn-search,
    .btn-reset {
        width: 100%;
    }
}

.blog-thumb img {
    width: 70px;
    height: 55px;
    border-radius: 8px;
    object-fit: cover;
    transition: 0.3s ease;
}

li:hover .blog-thumb img {
    transform: scale(1.05);
}

.swiper-button-prev::after,
.swiper-button-next::after {
    display: none;
}

/* preloader */
/* Preloader */
.ctn-preloader {
    align-items: center;
    cursor: none;
    display: flex;
    height: 100%;
    justify-content: center;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 9009999;
}

.ctn-preloader .animation-preloader {
    position: absolute;
    z-index: 100;
}

/* Spinner cargando */
.ctn-preloader .animation-preloader .spinner {
    animation: spinner 1s infinite linear;
    border-radius: 50%;
    border: 3px solid rgba(255, 255, 255, 0.2);
    border-top-color: #ffffff;
    /* No se identa por orden alfabetico para que no lo sobre-escriba */
    height: 9em;
    margin: 0 auto 3.5em auto;
    width: 9em;
}

/* Texto cargando */
.ctn-preloader .animation-preloader .txt-loading {
    font: bold 5em 'Montserrat', sans-serif;
    text-align: center;
    user-select: none;
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading:before {
    animation: letters-loading 4s infinite;
    color: #ffffffe1;
    content: attr(data-text-preloader);
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transform: rotateY(-90deg);
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading {
    position: relative;
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading:nth-child(2):before {
    animation-delay: 0.2s;
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading:nth-child(3):before {
    animation-delay: 0.4s;
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading:nth-child(4):before {
    animation-delay: 0.6s;
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading:nth-child(5):before {
    animation-delay: 0.8s;
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading:nth-child(6):before {
    animation-delay: 1s;
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading:nth-child(7):before {
    animation-delay: 1.2s;
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading:nth-child(8):before {
    animation-delay: 1.4s;
}

.ctn-preloader .animation-preloader .txt-loading .letters-loading {
    color: rgba(255, 255, 255, 0.2);
}

.ctn-preloader.ctn-preloader1 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: var(--color-secondary);
}

.ctn-preloader.ctn-preloader2 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: #0D4F51;
}

.ctn-preloader.ctn-preloader3 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: #dd2f43;
}

.ctn-preloader.ctn-preloader4 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: #2B29A4;
}

.ctn-preloader.ctn-preloader5 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: #6A6A9A;
}

.ctn-preloader.ctn-preloader6 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: #4893FF;
}

.ctn-preloader.ctn-preloader7 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: var(--color-primary);
}

.ctn-preloader.ctn-preloader12 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: #DE8E59;
}

.ctn-preloader.ctn-preloader13 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: #02341c;
}

.ctn-preloader.ctn-preloader8 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: var(--color-primary);
}

.ctn-preloader.ctn-preloader9 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: #FE6032;
}

.ctn-preloader.ctn-preloader10 .loader-section {
    background-color: transparent;
    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
    background-color: #9400FF;
}

.ctn-preloader .loader-section {

    height: 100%;
    position: fixed;
    top: 0;
    width: calc(50% + 1px);
}

.ctn-preloader .loader-section.section-left {
    left: 0;
}

.ctn-preloader .loader-section.section-right {
    right: 0;
}

/* Efecto de fade en la animación de cargando */
.loaded .animation-preloader {
    opacity: 0;
    transition: 0.3s ease-out;
}

/* Efecto de cortina */
.loaded .loader-section.section-left {
    transform: translateX(-101%);
    transition: 0.7s 0.3s all cubic-bezier(0.1, 0.1, 0.1, 1.000);
}

.loaded .loader-section.section-right {
    transform: translateX(101%);
    transition: 0.7s 0.3s all cubic-bezier(0.1, 0.1, 0.1, 1.000);
}

/* Animación del preloader */
@keyframes spinner {
    to {
        transform: rotateZ(360deg);
    }
}

/* Animación de las letras cargando del preloader */
@keyframes letters-loading {

    0%,
    75%,
    100% {
        opacity: 0;
        transform: rotateY(-90deg);
    }

    25%,
    50% {
        opacity: 1;
        transform: rotateY(0deg);
    }
}

/* Tamaño de portatil hacia atras (portatil, tablet, celular) */
@media screen and (max-width: 767px) {

    /* Preloader */
    /* Spinner cargando */
    .ctn-preloader .animation-preloader .spinner {
        height: 8em;
        width: 8em;
    }

    /* Texto cargando */
    .ctn-preloader .animation-preloader .txt-loading {
        font: bold 3.5em 'Montserrat', sans-serif;
        color: #fff;
    }
}

@media screen and (max-width: 500px) {

    /* Prelaoder */
    /* Spinner cargando */
    .ctn-preloader .animation-preloader .spinner {
        height: 7em;
        width: 7em;
    }

    /* Texto cargando */
    .ctn-preloader .animation-preloader .txt-loading {
        font: bold 2em 'Montserrat', sans-serif;
    }
}



.gap1-10px {
    gap: 8px;
}

.country-text {
    position: relative;

    z-index: 2;
}

.content-title {
    line-height: 15px;
}

.country-text::before {
    content: "";
    position: absolute;
    left: -20px;
    right: -20px;
    bottom: -20px;
    top: -40px;
    background: linear-gradient(to top,
            rgba(0, 0, 0, 0.85),
            rgba(0, 0, 0, 0.4),
            transparent);
    z-index: -1;
}

.country-image {
    /* width: 365px; */
    height: 365px;
}

.search-btn1 {
    padding: 22px;
    border: none;
    border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    background-color: #0b6fbf;
    /* your button color */
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: background 0.3s;
}

.search-btn1:hover {
    background-color: #0451a5;
    /* darker shade on hover */
}

.search-btn1 i {
    font-size: 18px;
    color: white !important;
}

.custom-btn {
    padding: 5px 8px !important;
}

.custom-text {
    text-transform: none !important;
}

/* resouces */
/* Section Background */
.resources-section {
    background: #f4f6f9;
    padding: 60px 0;
}

/* Left Sidebar Box */
.resources-classes {
    background: #ffffff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.resources-classes h1 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 15px;
}

/* Left Tabs */
.resources-classes ul li {
    padding: 10px 12px;
    margin-bottom: 8px;
    background: #f1f1f1;
    border-radius: 5px;
    cursor: pointer;
    font-size: 14px;
    transition: 0.3s;
}

.resources-classes ul li:hover {
    background: #0451A5;
    color: #fff;
}

.resources-classes ul li.active {
    background: #0451A5;
    color: #fff;
}

/* Right Content Box */
.resources-content {
    background: transparent;
}

/* Hide all tabs initially */
.resource-tab,
.resource-tab1 {
    display: none;
}

/* Active tab visible */
.resource-tab.active,
.resource-tab1.active {
    display: flex;
}

/* Resource Card */
.resource-item {
    height: 100%;
    background: #ffffff;
    padding: 20px;
    border-radius: 8px;
    /* margin-bottom: 20px; */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.resource-item h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 5px;
}

.resource-item p {
    font-size: 13px;
    color: #6c757d;
    margin-bottom: 10px;
}

/* Buttons */
.theme-btn1 {
    display: inline-block;
    padding: 6px 14px;
    font-size: 12px;
    background: #00AEEF;
    color: #fff;
    border-radius: 4px;
    text-decoration: none;
    margin-right: 5px;
    transition: 0.3s;
}

.theme-btn1:hover {
    background: #0451A5;
    color: #fff;
}
.py-100{
    padding-top: 100px;
    padding-bottom: 100px;

}

