/*--
	Author: W3Layouts
	Author URL: http://w3layouts.com
	License: Creative Commons Attribution 3.0 Unported
	License URL: http://creativecommons.org/licenses/by/3.0/
--*/

html,
body {
    margin: 0;
    font-size: 100%;
    background: #fff;
    font-family: 'Raleway', sans-serif;
}

body a {
    text-decoration: none;
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
}

a:hover {
    text-decoration: none;
}

input[type="button"],
input[type="submit"] {
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    font-family: 'Raleway', sans-serif;
}

p {
    letter-spacing: 1px;
    font-size: 1em;
    line-height: 1.9em;
    color: #777;
}

ul {
    margin: 0;
    padding: 0;
}

label {
    margin: 0;
}

.navbar-nav {
    float: right;
    margin: 0;
}

.navbar-default {
    background-color: #ffffff;
    box-shadow: 0px 1px 6px rgba(0, 0, 0, 0.1);
    top: 40px;
}

.navbar-nav>li>a {
    padding-top: 25px;
    padding-bottom: 25px;
}

.nav_top_fx_w3ls_agileinfo {
    margin: 0 auto;
    width: 88%;
    padding: 1.4em 0;
}

.navbar-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 0;
    text-decoration: none;
    color: #ef2532;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.29);
    white-space: nowrap; /* Keeps everything on one line */
    line-height: 50px; /* Vertically centers content */
}

.navbar-brand img {
    height: 70px;
    width: auto;
    display: block;   
}

@media(max-width: 991px) {
    .navbar-brand img {
        height: 45px;
    }
    .navbar-brand {
        gap: 8px;
        font-size: 0.8em;
    }
}

@media(max-width: 768px) {
    .navbar-brand img {
        height: 30px;
    }
    .navbar-brand {
        gap: 5px;
        font-size: 0.65em;
    }
}

@media(max-width: 480px) {
    .navbar-brand img {
        height: 22px;
    }
    .navbar-brand {
        gap: 4px;
        font-size: 0.5em;
    }
}


.navbar-default .navbar-brand {
    color: #ef2532;
}

.logo-w3layouts-agileits h4 a {
    font-size: 1.1em;
    color: #4b1bd9;
}



.navbar-nav>li>a {
    padding: 7px 20px;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 0.75em;
    font-weight: 600;
    position: relative;
    transition: all 0.3s ease;}

.navbar-default .navbar-nav>li>a {
    color: #27292b;
}

.dropdown-menu>li>a {
    display: block;
    padding: 10px 20px;
    clear: both;
    font-weight: normal;
    line-height: 1.42857143;
    color: #353434;
    letter-spacing: 1px;
}

/* Underline effect on hover */
.navbar-nav > li > a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 3px;
    background: #ff3c41;
    transition: width 0.3s ease;
}

.navbar-nav > li > a:hover::after {
    width: 80%;
}

.navbar-nav > li > a:hover {
    color: #ff3c41;
    background-color: transparent;
}

/* Dropdown hover */
.navbar-nav .dropdown-menu li a {
    transition: all 0.3s ease;
}

.navbar-nav .dropdown-menu li a:hover {
    color: #ff3c41;
    background-color: rgba(255, 60, 65, 0.05);
    padding-left: 25px;
}



a.request {
    display: inline-block;
    padding: 0.7em 1.8em;
    background: #fbb72c; /* KAHA Gold */
    color: #003366;
    border: none;
    border-radius: 50px; /* Fully rounded */
    font-weight: 600;
    font-size: 0.9em;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 15px rgba(251, 183, 44, 0.35);
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

a.request:hover {
    background: #ffffff;
    color: #003366;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(251, 183, 44, 0.5);
}


.nav_right_top {
    margin-top: 0.4em;
}



/*.navbar-default .navbar-nav>.active>a,
.navbar-default .navbar-nav>.active>a:hover,
.navbar-default .navbar-nav>.active>a:focus {
    color: #fff;
    background-color: #ff3c41;
}*/


/* Hide dropdown when not hovering over parent */
.navbar-nav .dropdown:hover .dropdown-menu {
    display: block;
}

/* Hide dropdown when moving to other links */
.navbar-nav .dropdown .dropdown-menu {
    display: none;
}

.navbar-nav .dropdown:hover .dropdown-menu {
    display: block;
}

/* For mobile - keep click behavior */
@media(max-width: 768px) {
    .navbar-nav .dropdown .dropdown-menu {
        display: none;
    }
    
    .navbar-nav .dropdown.open .dropdown-menu {
        display: block;
    }
}


.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
    color: #2d2d2d;
    background-color: none;
}

span.desc {
    font-size: 0.3em;
    display: block;
    color: #f53030;
    letter-spacing: 3px;
    font-weight: normal;
    opacity: 0.8;
}

.logo-w3layouts-agileits i.fa {
    color: #76daff;
}

/* Top Marquee Bar */
.top-marquee-bar {
    background: #003366; /* Dark Blue - not white or gold */
    color: #ffffff;
    padding: 8px 0;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1030;
    border-bottom: 2px solid #fbb72c; /* Gold accent */
    font-size: 0.85em;
}

/*===========PAGE LOADER=================*/
.page-loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffff;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.6s ease, visibility 0.6s ease;
}

.page-loader.hide {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.loader-container {
    text-align: center;
    padding: 20px;
}

/* ===== LOADER ICON ===== */
.loader-icon {
    position: relative;
    width: 120px;
    height: 120px;
    margin: 0 auto 20px;
}

.loader-logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 70px;
    height: 70px;
    object-fit: contain;
    z-index: 2;
    animation: logoPulse 1.5s ease-in-out infinite;
}

@keyframes logoPulse {
    0%, 100% {
        transform: translate(-50%, -50%) scale(1);
    }
    50% {
        transform: translate(-50%, -50%) scale(1.05);
    }
}

/* ===== LOADER RINGS ===== */
.loader-ring {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ring {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3px solid transparent;
    border-top-color: #fbb72c;
    animation: spin 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
}

.ring-2 {
    border-top-color: #003366;
    animation-duration: 1.8s;
    animation-delay: -0.6s;
    border-width: 2px;
}

.ring-3 {
    border-top-color: #fbb72c;
    animation-duration: 2.4s;
    animation-delay: -1.2s;
    border-width: 2px;
    width: 90%;
    height: 90%;
    top: 5%;
    left: 5%;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

/* ===== LOADER TEXT ===== */
.loader-text {
    font-size: 2em;
    font-weight: 800;
    letter-spacing: 8px;
    margin-bottom: 15px;
}

.loader-text span {
    display: inline-block;
    animation: textBounce 1.2s ease-in-out infinite;
    color: #003366;
}

.loader-text span:nth-child(1) { animation-delay: 0.0s; color: #fbb72c; }
.loader-text span:nth-child(2) { animation-delay: 0.1s; }
.loader-text span:nth-child(3) { animation-delay: 0.2s; }
.loader-text span:nth-child(4) { animation-delay: 0.3s; color: #fbb72c; }

@keyframes textBounce {
    0%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-10px);
    }
}

/* ===== PROGRESS BAR ===== */
.loader-progress {
    width: 200px;
    height: 4px;
    background: #e8eaed;
    border-radius: 4px;
    margin: 15px auto;
    overflow: hidden;
}

.progress-bar {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, #fbb72c, #003366, #fbb72c);
    background-size: 200% 100%;
    border-radius: 4px;
    animation: progressGradient 2s linear infinite;
    transition: width 0.3s ease;
}

@keyframes progressGradient {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

.loader-subtitle {
    font-size: 0.85em;
    color: #888;
    margin: 5px 0 0;
    font-weight: 300;
    letter-spacing: 1px;
}

/* ===== HIDE ANIMATION ===== */
.page-loader.hide .loader-container {
    animation: scaleDown 0.4s ease forwards;
}

@keyframes scaleDown {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    100% {
        transform: scale(0.8);
        opacity: 0;
    }
}

/* ===== RESPONSIVE ===== */
@media(max-width: 768px) {
    .loader-icon {
        width: 90px;
        height: 90px;
    }
    .loader-logo {
        width: 50px;
        height: 50px;
    }
    .loader-text {
        font-size: 1.5em;
        letter-spacing: 6px;
    }
    .loader-progress {
        width: 150px;
    }
}

@media(max-width: 480px) {
    .loader-icon {
        width: 70px;
        height: 70px;
    }
    .loader-logo {
        width: 40px;
        height: 40px;
    }
    .loader-text {
        font-size: 1.2em;
        letter-spacing: 4px;
    }
    .loader-progress {
        width: 120px;
    }
    .loader-subtitle {
        font-size: 0.7em;
    }
}
/*===========PAGE LOADER=================*/

/* ===== TOP MARQUEE BAR ===== */
.top-marquee-bar {
    background: #003366;
    color: #ffffff;
    padding: 8px 0;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1030;
    border-bottom: 2px solid #fbb72c;
    font-size: 0.9em;
    overflow: hidden;
}

/* ===== DESKTOP ONLY (Member Login) ===== */
.desktop-only {
    display: inline-flex !important;
}

/* ===== MOBILE ONLY (Login Nav Item) ===== */
.mobile-only {
    display: none !important;
}

/* ===== NAVBAR ADJUSTMENT ===== */
.navbar-fixed-top {
    top: 40px; /* Height of marquee bar */
}

/* ============================================
   RESPONSIVE
   ============================================ */

/* Tablets and below */
@media(max-width: 991px) {
    .desktop-only {
        display: none !important;
    }
    
    .mobile-only {
        display: block !important;
    }
    
    /* Marquee bar adjustments */
    .marquee-content {
        flex-direction: column;
        gap: 8px;
        padding: 5px 0;
    }
    
    .marquee-left {
        width: 100%;
        margin-right: 0;
    }
    
    .marquee-track {
        gap: 25px;
        animation-duration: 20s;
    }
    
    .marquee-track span {
        font-size: 0.7em;
    }
    
    .marquee-right {
        width: 100%;
        justify-content: center;
        gap: 12px;
        flex-wrap: wrap;
    }
    
    .social-icons {
        gap: 8px;
    }
}

/* Mobile phones */
@media(max-width: 768px) {
    .navbar-fixed-top {
        top: 70px; /* Increased height for marquee on mobile */
    }
    
    .top-marquee-bar {
        padding: 5px 0;
    }
    
    .marquee-track {
        gap: 20px;
        animation-duration: 15s;
    }
    
    .marquee-track span {
        font-size: 0.6em;
    }
    
    .marquee-right {
        gap: 8px;
    }
    
    .social-icons a {
        font-size: 0.75em;
    }
}

/* Small phones */
@media(max-width: 480px) {
    .navbar-fixed-top {
        top: 55px;
    }
    
    .marquee-track {
        gap: 15px;
        animation-duration: 12s;
    }
    
    .marquee-track span {
        font-size: 0.55em;
    }
}

/* ============================================
   MOBILE NAV LOGIN STYLING
   ============================================ */
.login-nav-item {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    margin-top: 5px;
    padding-top: 5px;
}

.login-nav-link {
    display: flex !important;
    align-items: center;
    gap: 10px;
    color: #fbb72c !important;
    font-weight: 700 !important;
}

.login-nav-link i {
    color: #fbb72c;
    font-size: 1.1em;
}

.login-nav-link:hover {
    color: #ffffff !important;
    background: #fbb72c !important;
    border-radius: 6px;
}

.login-nav-link:hover i {
    color: #003366 !important;
}


.marquee-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

/* ===== LEFT - SCROLLING CONTACTS ===== */
.marquee-left {
    flex: 1;
    overflow: hidden;
    position: relative;
    margin-right: 20px;
}

.marquee-track {
    display: flex;
    gap: 40px;
    white-space: nowrap;
    animation: marqueeScroll 25s linear infinite;
    width: max-content;
}

/* Pause on hover */
.marquee-left:hover .marquee-track {
    animation-play-state: paused;
}

.marquee-track span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #ffffff;
    font-size: 1.2em;
}

.marquee-track span i {
    color: #fbb72c;
    font-size: 0.8em;
    gap: 3px;
}

/* ===== RIGHT - STATIC SOCIAL ICONS ===== */
.marquee-right {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-shrink: 0;
}

.social-icons {
    display: flex;
    gap: 12px;
}

.social-icons a {
    color: #ffffff;
    font-size: 0.9em;
    transition: all 0.3s ease;
    display: inline-block;
}

.social-icons a:hover {
    color: #fbb72c;
    transform: translateY(-2px);
}

.member-login {
    color: #ffffff;
    text-decoration: none;
    font-weight: 600;
    padding: 6px 20px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 20px;
    transition: all 0.3s ease;
    font-size: 0.85em;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    position: relative;
    animation: pulseGlow 2s ease-in-out infinite;
}

.member-login i {
    color: #fbb72c;
    transition: all 0.3s ease;
}

.member-login:hover {
    background: #fbb72c;
    color: #003366;
    border-color: #fbb72c;
    animation: none;
    transform: scale(1.05);
    box-shadow: 0 0 30px rgba(251, 183, 44, 0.4);
}

.member-login:hover i {
    color: #003366;
}

@keyframes pulseGlow {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(251, 183, 44, 0);
        border-color: rgba(255, 255, 255, 0.3);
    }
    50% {
        box-shadow: 0 0 20px rgba(251, 183, 44, 0.2);
        border-color: rgba(251, 183, 44, 0.5);
    }
}


/* ===== MARQUEE ANIMATION ===== */
@keyframes marqueeScroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* ===== RESPONSIVE ===== */
@media(max-width: 992px) {
    .marquee-track span {
        font-size: 0.75em;
    }
}

@media(max-width: 768px) {
    .marquee-content {
        flex-direction: column;
        gap: 8px;
        padding: 5px 0;
    }
    
    .marquee-left {
        width: 100%;
        margin-right: 0;
    }
    
    .marquee-track {
        gap: 25px;
        animation-duration: 20s;
    }
    
    .marquee-track span {
        font-size: 0.7em;
    }
    
    .marquee-right {
        width: 100%;
        justify-content: center;
        gap: 12px;
        flex-wrap: wrap;
    }
    
    .social-icons {
        gap: 8px;
    }
    
    .member-login {
        font-size: 0.75em;
        padding: 3px 12px;
    }
}

@media(max-width: 480px) {
    .marquee-track {
        gap: 20px;
        animation-duration: 15s;
    }
    
    .marquee-track span {
        font-size: 0.6em;
    }
    
    .marquee-right {
        gap: 8px;
    }
    
    .social-icons a {
        font-size: 0.75em;
    }
    
    .member-login {
        font-size: 0.65em;
        padding: 2px 10px;
    }
}

/*--// header --*/

/*-- banner --*/

.carousel .item {
    background: -webkit-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha3.jpg) no-repeat;
    background: -moz-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha3.jpg) no-repeat;
    background: -ms-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha3.jpg) no-repeat;
    background: linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha3.jpg) no-repeat;
    background-size: cover;
}

.carousel .item.item2 {
    background: -webkit-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha2.jpg) no-repeat;
    background: -moz-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha2.jpg) no-repeat;
    background: -ms-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha2.jpg) no-repeat;
    background: linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha2.jpg) no-repeat;
    background-size: cover;
}

.carousel .item.item3 {
    background: -webkit-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha3.jpg) no-repeat;
    background: -moz-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha3.jpg) no-repeat;
    background: -ms-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha3.jpg) no-repeat;
    background: linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha3.jpg) no-repeat;
    background-size: cover;
}

.carousel .item.item4 {
    background: -webkit-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha2.jpg) no-repeat;
    background: -moz-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha2.jpg) no-repeat;
    background: -ms-linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha2.jpg) no-repeat;
    background: linear-gradient(rgba(23, 22, 23, 0.2), rgba(23, 22, 23, 0.5)), url(../images/kaha2.jpg) no-repeat;
    background-size: cover;
}

.carousel-caption {
    background: rgba(0, 0, 0, 0.6);
    padding: 35px 50px;
    border-radius: 12px;
    display: inline-block;
    max-width: 80%;
    margin: 0 auto;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.3);
    border-left: 5px solid #fbb72c;
}

.carousel-caption h2,
.carousel-caption h3 {
    font-size: 2.5em;
    font-weight: 700;
    letter-spacing: 2px;
    color: #ffffff;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
    margin-bottom: 10px;
}

.carousel-caption h2 span,
.carousel-caption h3 span {
    font-weight: 600;
}

.carousel-caption p {
    letter-spacing: 7px;
    font-size: 1.1em;
    font-weight: 300;
    color: #fff;
    margin: 1em 0 2em 0;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
    line-height: 1.6;
}





.codes {
    padding: 5em 0;
    background: #fff;
}

.codes.agileitsbg2 {
    background: #E74C3C;
    background-image: -webkit-linear-gradient(#ff9d2f, #ff6126);
    background-image: -moz-linear-gradient(#ff9d2f, #ff6126);
    background-image: -ms-linear-gradient(#ff9d2f, #ff6126);
    background-image: linear-gradient(#ff9d2f, #ff6126);
    padding-bottom: 10em;
}

.codes.agileitsbg3 {
    background: #3498DB;
    padding-bottom: 10em;
}

.codes.agileitsbg4 {
    background: #2ECC71;
    padding-bottom: 10em;
}

.carousel.slide.grid_3.grid_4 {
    border-top: 10px solid #3ACFD5;
    border-bottom: 10px solid #3a4ed5;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-position: 0 0, 100% 0;
    background-repeat: no-repeat;
    -webkit-background-size: 10px 100%;
    -moz-background-size: 10px 100%;
    background-size: 10px 100%;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjxzdmcgeG1sbnM9Imh0dÃƒÂ¢Ã¢â€šÂ¬Ã‚Â¦0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2xlc3NoYXQtZ2VuZXJhdGVkKSIgLz48L3N2Zz4=), url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/PjxzdmcgeG1sbnM9Imh0dÃƒÂ¢Ã¢â€šÂ¬Ã‚Â¦0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2xlc3NoYXQtZ2VuZXJhdGVkKSIgLz48L3N2Zz4=);
    background-image: -webkit-linear-gradient(top, #3acfd5 0%, #3a4ed5 100%), -webkit-linear-gradient(top, #3acfd5 0%, #3a4ed5 100%);
    background-image: -moz-linear-gradient(top, #3acfd5 0%, #3a4ed5 100%), -moz-linear-gradient(top, #3acfd5 0%, #3a4ed5 100%);
    background-image: -o-linear-gradient(top, #3acfd5 0%, #3a4ed5 100%), -o-linear-gradient(top, #3acfd5 0%, #3a4ed5 100%);
    background-image: linear-gradient(to bottom, #3acfd5 0%, #3a4ed5 100%), linear-gradient(to bottom, #3acfd5 0%, #3a4ed5 100%);
}

.carousel-indicators {
    bottom: 5%;
    left: 50%;
}

.carousel-caption {
    position: inherit;
    min-height: 650px !important;
    padding-top: 16em;
    text-align: center;
}

.carousel-control {
    line-height: 35em;
}

.carousel-indicators li {
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 4px;
    border: 2px solid #fff;
}

.carousel-indicators .active {
    width: 12px;
    height: 12px;
    margin: 0px 4px;
    border: 2px solid #ff3c41;
    background: #ff3c41;
}

.top-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px; /* Space between buttons */
    margin: 1em auto 0;
    text-align: center;
    width: 100%;
}

.bnr-button {
    display: inline-block;
}

.bnr-button a {
    display: inline-block;
    padding: 10px 30px;
    text-decoration: none;
    border-radius: 30px;
    font-weight: 600;
    transition: all 0.3s ease;
}

/* Primary Button */
.bnr-button a.act {
    background: #003366;
    color: #ffffff;
}

.bnr-button a.act:hover {
    background: #ffffff;
    color: #003366;
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(0,0,0,0.2);
}

/* Secondary Button */
.bnr-button a.two {
    background: transparent;
    color: #ffffff;
    border: 2px solid #ffffff;
}

.bnr-button a.two:hover {
    background: #fbb72c;
    border-color: #fbb72c;
    color: #003366;
    transform: translateY(-3px);
}

/* Remove clearfix if using flexbox */
.clearfix {
    display: none;
}


a.two.scroll {
    margin-left: 10px;
}

/*-- //banner --*/

/*-- /banner_bottom --*/


.vision-item {
    margin-bottom: 25px;
    padding-left: 45px;
    position: relative;
}

.vision-item i,
.vision-item .vision-icon,
.vision-item .vision-svg {
    position: absolute;
    left: 0;
    top: 5px;
    font-size: 28px;
    color: #fb2c2c;
    width: 32px;
    text-align: center;
}

.vision-item h4 {
    font-size: 1.5em;
    font-weight: 700;
    color: #003366; /* KAHA Dark Blue */
    margin-bottom: 8px;
}

.vision-item p {
    font-size: 1.2em;
    color: #252424;
    letter-spacing: 1px;
    position: relative;
    font-weight: 300;
    line-height: 1.6em;
    margin-bottom: 1em;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.vision-item .motto-text {
    font-style: italic;
    color: #252424;
    margin-top: 5px;
    font-size: 1.2em;
    line-height: 1.6em;
}

/* Responsive */
@media (max-width: 768px) {
    .vision-item {
        padding-left: 40px;
    }
    
    .vision-item i,
    .vision-item .vision-icon {
        font-size: 22px;
        top: 3px;
    }
    
    .vision-item h4 {
        font-size: 1em;
    }
}



.banner_bottom_left p{
    font-size: 1.2em;
    color: #252424;
    letter-spacing: 1px;
    position: relative;
    font-weight: 300;
    line-height: 1.6em;
    margin-bottom: 1em;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);

}

.banner_bottom_left h4 {
    font-size: 1.5em;
    color: #3c3c3c;
    letter-spacing: 1px;
    position: relative;
    font-weight: 600;
    line-height: 1.6em;
    margin-bottom: 1em;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.help_full img,
.help_full img {
    width: 100%;
}

.news-main {
    margin-top: 4em;
}

.banner_bottom_left p {
    margin-bottom: 1em;
}

.banner_bottom {
    padding: 7em 0;
}

.news-left {
    padding-left: 0;
}

.b_left {
    padding: 0;
}

.b_right {
    padding: 0;
}

.news-right h4 {
    color: #333;
    font-size: 2.5em;
    font-weight: 500;
}

p.sub_p {
    margin: 1.2em 0;
}

.ab_info {
    margin-bottom: 2em;
}

.ab_info h4 {
    margin-top: 1em;
    font-size: 1.4em;
}

.banner_bottom_in {
    text-align: center;
    margin: 0 auto;
    width: 60%;
}

.banner_bottom_in img {
    background-color: #ebeeef;
    padding: 0.5em;
}

.banner_bottom_in p {
    margin: 2em 0;
}

.ab_button {
    margin-top: 2em;
}

.ab_button a {
    padding: 0.8em 2em;
    background: #003366;
    color: #ffffff;
    font-size: 0.8em;
    border-radius: 50px; /* Fully rounded */
    font-weight: 600;
    font-size: 0.9em;
    text-decoration: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 15px rgba(251, 183, 44, 0.35);
    letter-spacing: 0.5px;
    text-transform: uppercase;

    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
}

.ab_button a:hover {
    background: #ef0808;
    border: 2px solid #003366;
    color: #ffffff;
}

.banner_bottom_in h3 {
    line-height: 1.3em;
}

.banner_bottom_in iframe {
    width: 600px;
    min-height: 333px;
    border: 6px solid #ddd;
    margin-top: 3em;
}

.news-main {
    margin-top: 4em;
    border-top: 1px solid #ddd;
    padding-top: 4em;
}

.banner_bottom_grid_left_grid span {
    font-size: 2em;
    color: #003366;
    line-height: 62px;
}

/*.banner_bottom_grid_right h4 {
    font-size: 1.2em;
    margin-bottom: .7em;
    font-weight: 600;
    color: #222222;
    letter-spacing: 1px;
}

.banner_bottom_grid_right p {
    line-height: 1.9em;
}*/


/* Style for the link buttons */
.service-link {
    display: inline-block;
    color: #fbb72c;
    font-weight: 600;
    text-decoration: none;
    font-size: 1.25em;
    margin-top: 8px;
    transition: all 0.3s ease;
    letter-spacing: 0.5px;
}

.service-link:hover {
    color: #003366;
    transform: translateX(5px);
}

.service-link::after {
    content: " →";
    transition: all 0.3s ease;
}

.service-link:hover::after {
    margin-left: 5px;
}

/* Ensure the right column has enough space */
.banner_bottom_grid_right {
    padding-right: 15px;
}

.banner_bottom_grid_right h4 {
    font-size: 1.2em;
    margin-bottom: 0.5em;
    font-weight: 600;
    color: #222222;
    letter-spacing: 1px;
}

.banner_bottom_grid_right p {
    line-height: 1.6em;
    margin-bottom: 5px;
    font-size: 0.95em;
    color: #555;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .banner_bottom_grid_right h4 {
        font-size: 1em;
    }
    
    .banner_bottom_grid_right p {
        font-size: 0.85em;
        line-height: 1.5em;
    }
    
    .service-link {
        font-size: 0.8em;
    }
}

/*-- /works--*/

.inner_sec_info_wthree_agile {
    margin-top: 4em;
}

.banner_inner_con {
    background: url(../images/banner2.jpg) no-repeat 0px 0px;
    background-size: cover;
    -webkit-background-size: cover;
    -o-background-size: cover;
    -ms-background-size: cover;
    min-height: 300px;
}

.services-breadcrumb {
    padding: 1em 1em;
    background: #f5f5f5;
    text-align: center;
}

ul.short li {
    text-align: left;
    display: inline-block;
    letter-spacing: 1px;
    color: #8c8e90;
    font-size: 0.85em;
}

ul.short li a {
    color: #76daff;
    text-decoration: none;
}

.services-breadcrumb ul li span {
    padding: 0 1.5em;
}

/*-- //works--*/

h3.tittle-w3ls {
    color: #1b1b1b;
    font-size: 2.3em;
    text-align: left;
    letter-spacing: 2px;
    font-weight: 700;
    margin-bottom: .7em;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.05);
    text-align: center;
}

h3.tittle-w3ls.cen {
    color: #fff;
    text-align: center;
}

.ser-first-grid span {
    font-size: 32px;
    color: #fff;
    background: none;
    width: 80px;
    height: 80px;
    line-height: 2.4em;
    border: 2px solid #fff;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -o-border-radius: 50%;
    -ms-border-radius: 50%;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    -o-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
    -ms-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

.ser-first-grid:hover span {
    color: #003366;
    border: 2px solid #003366;
}

.ser-first-grid p {
    margin: 0;
    color: #d0cbcb;
    font-size: 1.0em;
    line-height: 1.9em;
}

.ser-first-grid h3 {
    margin: 26px 0 10px 0;
    color: #fff;
    font-weight: 600;
    font-size: 1.2em;
    letter-spacing: 1px;
}

.works {
    padding: 7em 0;
    background: #1d1c1c;
}



.port-info {
    padding: 20px 15px;
    text-align: center;
    transition: all 0.3s ease;
    border-radius: 8px;
    margin-bottom: 20px;
    background: #f9f9f9;
    border: 1px solid #eee;
}

.port-info:hover {
    background: #ffffff;
    box-shadow: 0 5px 25px rgba(0,0,0,0.08);
    transform: translateY(-5px);
    border-color: #fbb72c;
}

.port-info i {
    font-size: 32px;
    color: #003366;
    margin-bottom: 12px;
    display: inline-block;
}

.port-info h5 {
    font-size: 1em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 8px 0;
}

.port-info p {
    font-size: 0.9em;
    color: #666;
    line-height: 1.5;
    margin: 0;
}



.join-now-btn {
    display: inline-block;
    padding: 14px 45px;
    background: #712cfb;
    color: #eceef0;
    font-size: 1.1em;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 50px;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(251, 183, 44, 0.4);
    border: 2px solid #fbb72c;
    position: relative;
    animation: heartbeat 1.5s ease-in-out infinite;
}

/* Ripple effect around button */
.join-now-btn::before {
    content: '';
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    border-radius: 60px;
    border: 2px solid rgba(251, 183, 44, 0.3);
    animation: ripple 1.5s ease-in-out infinite;
}

.join-now-btn::after {
    content: '';
    position: absolute;
    top: -20px;
    left: -20px;
    right: -20px;
    bottom: -20px;
    border-radius: 70px;
    border: 2px solid rgba(251, 183, 44, 0.15);
    animation: ripple 1.5s ease-in-out infinite 0.5s;
}

.join-now-btn i {
    margin-left: 10px;
    transition: all 0.3s ease;
}

.join-now-btn:hover {
    background: #fa030b;
    color: #f8f6f1;
    transform: translateY(-3px);
    box-shadow: 0 8px 30px rgba(251, 183, 44, 0.6);
    animation: none;
}

.join-now-btn:hover::before,
.join-now-btn:hover::after {
    animation: none;
    opacity: 0;
}

.join-now-btn:hover i {
    transform: translateX(8px);
}

/* Heartbeat Animation */
@keyframes heartbeat {
    0% {
        transform: scale(1);
    }
    14% {
        transform: scale(1.06);
    }
    28% {
        transform: scale(1);
    }
    42% {
        transform: scale(1.06);
    }
    70% {
        transform: scale(1);
    }
    100% {
        transform: scale(1);
    }
}

/* Ripple Animation */
@keyframes ripple {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    100% {
        transform: scale(1.3);
        opacity: 0;
    }
}



/* Heading with Countdown */
.heading-with-countdown {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 30px;
}

.heading-with-countdown h3 {
    margin: 0;
    flex-shrink: 0;
    
}

.countdown-wrapper {
    display: flex;
    align-items: center;
    background: #003366;
    padding: 10px 20px;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.15);
}

.countdown-item {
    display: flex;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.countdown-label {
    color: #f70505;
    font-weight: 600;
    font-size: 1.0em;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding-right: 15px;
    border-right: 2px solid rgba(255, 255, 255, 0.2);
}

.countdown-timer {
    display: flex;
    gap: 8px;
    align-items: center;
}

.countdown-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: rgba(255, 255, 255, 0.1);
    padding: 5px 10px;
    border-radius: 6px;
    min-width: 40px;
}

.countdown-box span:first-child {
    font-size: 1.2em;
    font-weight: 700;
    color: #fbb72c;
    line-height: 1.2;
}

.countdown-text {
    font-size: 0.55em;
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.view-link {
    color: #fbb72c;
    font-weight: 600;
    text-decoration: none;
    font-size: 1.0em;
    padding-left: 15px;
    border-left: 2px solid rgba(255, 255, 255, 0.2);
    transition: all 0.3s ease;
    white-space: nowrap;
    text-transform: uppercase;
}

.view-link:hover {
    color: #ffffff;
    transform: translateX(5px);
}

.view-link::after {
    content: " →";
    transition: all 0.3s ease;
}

.view-link:hover::after {
    margin-left: 5px;
}

/* Responsive */
@media (max-width: 768px) {
    .heading-with-countdown {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .countdown-wrapper {
        width: 100%;
        padding: 12px 15px;
    }
    
    .countdown-item {
        width: 100%;
        justify-content: center;
    }
    
    .countdown-box {
        min-width: 30px;
        padding: 3px 6px;
    }
    
    .countdown-box span:first-child {
        font-size: 0.9em;
    }
    
    .countdown-text {
        font-size: 0.45em;
    }
    
    .countdown-label {
        font-size: 0.7em;
        padding-right: 10px;
    }
    
    .view-link {
        font-size: 0.8em;
        padding-left: 10px;
    }
}

@media (max-width: 480px) {
    .countdown-timer {
        gap: 4px;
    }
    
    .countdown-box {
        min-width: 25px;
        padding: 2px 4px;
    }
    
    .countdown-box span:first-child {
        font-size: 0.75em;
    }
    
    .countdown-text {
        font-size: 0.4em;
    }
}

/* ===== WIDGET SPOTS REMAINING ===== */
.widget-spots {
    text-align: center;
    margin: 8px 0 12px;
    padding: 4px 10px;
    border-radius: 20px;
    background: #e8f5e9;
    display: inline-block;
    width: 100%;
}

.widget-spots .spots-remaining {
    font-size: 0.75em;
    color: #2e7d32;
    font-weight: 600;
}

.widget-spots .spots-remaining i {
    color: #4caf50;
    margin-right: 4px;
}

.widget-spots.fully-booked {
    background: #fce4ec;
}

.widget-spots.fully-booked .spots-remaining {
    color: #c62828;
}

.widget-spots.fully-booked .spots-remaining i {
    color: #d93025;
}

/* ===== EARLY BIRD TAG ===== */
.early-bird-tag {
    display: inline-block;
    background: #ff9800;
    color: #fff;
    padding: 1px 8px;
    border-radius: 10px;
    font-size: 0.6em;
    margin-right: 6px;
    animation: pulse-tag 2s ease-in-out infinite;
}

@keyframes pulse-tag {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

/* ===== DISABLED REGISTER BUTTON ===== */
.widget-btn.register-btn.disabled {
    background: #ccc;
    color: #888;
    cursor: not-allowed;
    border-color: #ccc;
}

.widget-btn.register-btn.disabled:hover {
    background: #ccc;
    color: #888;
    transform: none;
    box-shadow: none;
}

/* ===== WIDGET CLOSE ANIMATION ===== */
.event-widget {
    transition: all 0.4s ease;
}

.event-widget.hidden {
    transform: translateX(100px);
    opacity: 0;
    pointer-events: none;
}

/* ===== RESPONSIVE ===== */
@media(max-width: 768px) {
    .widget-spots {
        font-size: 0.8em;
    }
}


/*-- /blog --*/

.banner-btm-top,
.banner-btm-bottom {
    display: flex;
    display: -webkit-flex;
}

.a1 {
    background: #003366;
}

.a4 {
    background: #003366;
}

.a2 {
    background: url(../images/event.jpg) no-repeat 0px 0px;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    -ms-background-size: cover;
    min-height: 350px;
}

.a3 {
    background: url(../images/event.jpg) no-repeat 0px 0px;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    -ms-background-size: cover;
    min-height: 350px;
}

.a5 {
    background: url(../images/event.jpg) no-repeat 0px 0px;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    -ms-background-size: cover;
    min-height: 350px;
}

.a6 {
    background: url(../images/event.jpg) no-repeat 0px 0px;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    -ms-background-size: cover;
    min-height: 350px;
}

.banner-btm-left {
    padding: 0;
}

.banner-btm-inner {
    flex: 1;
    padding: 4.5em 2.5em;
}

.blog_date h4 {
    font-size: 0.9em;
    font-weight: 600;
    color: #f00;
    margin-bottom: 1em;
}

.banner-btm-inner h6 {
    font-size: 1.1em;
    font-weight: 600;
    color: #222;
    margin-bottom: 1em;
}

.banner-btm-inner h6 a {
    color: #ffffff;
    letter-spacing: 2px;
}

.banner-btm-inner p {
    font-size: 0.9em;
    color: #ffffff;
    margin: 1em 0;
}

a.blog-btn {
    background: #fff;
    font-size: 0.85em;
    padding: 0.6em 1em;
    color: #222;
    letter-spacing: 1px;
}

a.blog-btn:hover {
    background: #ff3c41;
    color: #fff;
}

/*-- //blog --*/
/*-- partners--- */

.partners-marquee {
    width: 100%;
    overflow: hidden;
    background: linear-gradient(135deg, #ffffff, #f5f7fa);
    padding: 35px 0;
    border-radius: 12px;
    margin: 20px 0;
    position: relative;
    /*box-shadow: 0 2px 20px rgba(0, 0, 0, 0.05);*/
}

.partners-marquee::before,
.partners-marquee::after {
    content: '';
    position: absolute;
    top: 0;
    width: 120px;
    height: 100%;
    z-index: 2;
}

.partners-marquee::before {
    left: 0;
    background: linear-gradient(to right, #ffffff, transparent);
}

.partners-marquee::after {
    right: 0;
    background: linear-gradient(to left, #ffffff, transparent);
}

.marquee-track {
    display: flex;
    animation: marquee-scroll 20s linear infinite;
    width: max-content;
    align-items: center;
}

.partner-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 160px;
    padding: 0 35px;
    transition: all 0.4s ease;
    filter: grayscale(100%);
    opacity: 0.5;
}

.partner-logo:hover {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.08);
}

.partner-logo img {
    max-height: 65px;
    width: auto;
    object-fit: contain;
    margin-bottom: 10px;
}

.partner-logo span {
    font-size: 0.75em;
    color: #333;
    font-weight: 600;
    text-align: center;
    letter-spacing: 0.5px;
}

@keyframes marquee-scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

.partners-marquee:hover .marquee-track {
    animation-play-state: paused;
}

/*---partners---*/

/*-- /testimonials --*/

.carousel.slide.two .item {
    background: none !important;
}

.tesimonials {
    padding: 7em 0;
    background: #222222;
    text-align: center;
    background: url(../images/bottom.jpg) no-repeat 0px 0px;
    background-size: cover;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    -moz-background-size: cover;
}

#quote-carousel {
    padding: 0 10px 30px 10px;
    margin-top: 30px;
}

/* Control buttons  */

#quote-carousel .carousel-control {
    background: none;
    color: #fff;
    font-size: 2em;
    text-shadow: none;
    margin-top: 0px;
    line-height: 145px;
}

ol.carousel-indicators.two {
    display: block;
}

/* Previous button  */

#quote-carousel .carousel-control.left {
    left: -116px;
}

/* Next button  */

#quote-carousel .carousel-control.right {
    right: -116px !important;
}

/* Changes the position of the indicators */

#quote-carousel .carousel-indicators {
    left: 34%;
    top: auto;
    bottom: -26px;
    margin-right: -19px;
}

/* Changes the color of the indicators */

#quote-carousel .carousel-indicators li {
    background: #fff;
    width: 12px;
    height: 12px;
    margin: 0 2px;
}

#quote-carousel .carousel-indicators .active {
    width: 12px;
    height: 12px;
    margin: 0 2px;
    background: #ee4f4f;
    border: 1px solid #ee4f4f;
}

#quote-carousel img {
    box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.1);
    -webkit-box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.1);
    -o-box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.1);
}

/* End carousel */

.item blockquote {
    border-left: none;
    margin: 0;
}

.item blockquote img {
    margin-top: 14px;
}

.item blockquote p:before {
    content: "\f10d";
    font-family: 'Fontawesome';
    float: left;
    margin-right: 10px;
    color: #ff3c41;
    font-size: 2em;
}

.test_img_info p {
    color: #f7f5f5;
    margin-bottom: 1em;
    font-size: 0.9em;
}

.test_img_info h6 {
    color: #003366;
    font-size: 1em;
    font-weight: 600;
    margin-bottom: 2em;
    letter-spacing: 1px;
}

.text-center.test_img {
    width: 120px;
    height: 120px;
    border: 4px solid rgba(255, 255, 255, 0.07);
    margin-right: 1em;
}

.test_img i {
    color: #fff;
    font-size: 5em;
    line-height: 104px;
}

.test_img_info {
    text-align: left;
}

/**
  MEDIA QUERIES
*/

/* Small devices (tablets, 768px and up) */
/* ============================================
   CAROUSEL - FULL RESPONSIVE SOLUTION
   ============================================ */

/* ---- Mobile & Tablet (≤ 991px) ---- */
@media(max-width: 991px) {
    /* Hide carousel controls */
    #myCarousel .carousel-control,
    #myCarousel .carousel-indicators {
        display: none !important;
    }
    
    /* Disable carousel animation */
    #myCarousel .carousel-inner {
        transform: none !important;
        transition: none !important;
        -webkit-transition: none !important;
    }
    
    /* Hide ALL slides */
    #myCarousel .carousel-inner .item {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: none !important;
        -webkit-transition: none !important;
        transform: none !important;
    }
    
    /* Show ONLY the first slide */
    #myCarousel .carousel-inner .item:first-child {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        position: relative !important;
        left: 0 !important;
        transform: none !important;
    }
    
    /* Override any active class interference */
    #myCarousel .carousel-inner .item.active {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
    }
    
    /* Force first slide to be visible even if active class is removed */
    #myCarousel .carousel-inner .item:first-child.active {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
    }
    
    /* Adjust margin */
    #myCarousel {
        margin-top: 10% !important;
    }
}

/* ---- Small Mobile (≤ 480px) ---- */
@media(max-width: 480px) {
    #myCarousel {
        margin-top: 15% !important;
    }
    
    #myCarousel .carousel-caption h3 {
        font-size: 1.2em;
    }
    
    #myCarousel .carousel-caption p {
        font-size: 0.8em;
        letter-spacing: 3px;
    }
}

/* ---- Tablet Landscape (768px - 991px) ---- */
@media(min-width: 768px) and (max-width: 991px) {
    #myCarousel {
        margin-top: 8% !important;
    }
}

/* ---- Desktop (≥ 992px) - Normal Carousel ---- */
@media(min-width: 992px) {
    #myCarousel {
        margin-top: 7% !important;
    }
    
    #myCarousel .carousel-control,
    #myCarousel .carousel-indicators {
        display: block !important;
    }
    
    /* Restore normal carousel behavior */
    #myCarousel .carousel-inner .item {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        transition: transform 0.6s ease !important;
        -webkit-transition: transform 0.6s ease !important;
    }
    
    #myCarousel .carousel-inner .item.active {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
    }
}



/* ===== FLOATING EVENT WIDGET ===== */
.event-widget {
    position: fixed;
    top: 100px;
    right: 20px;
    z-index: 9999;
    width: 320px;
    background: linear-gradient(135deg, #ffffff, #f8f9fa);
    border-radius: 16px;
    box-shadow: 0 10px 50px rgba(0, 0, 0, 0.2);
    border-left: 5px solid #fbb72c;
    animation: widgetPulse 2s ease-in-out infinite, widgetSlideIn 0.6s ease-out;
    transition: all 0.3s ease;
    overflow: hidden;
}

/* Pulse animation for the widget */
@keyframes widgetPulse {
    0% {
        box-shadow: 0 10px 50px rgba(251, 183, 44, 0.2);
    }
    50% {
        box-shadow: 0 10px 60px rgba(251, 183, 44, 0.4);
    }
    100% {
        box-shadow: 0 10px 50px rgba(251, 183, 44, 0.2);
    }
}

/* Slide in animation */
@keyframes widgetSlideIn {
    0% {
        transform: translateX(50px);
        opacity: 0;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
}

/* Widget Header */
.widget-header {
    background: linear-gradient(135deg, #003366, #1a4a7a);
    padding: 12px 18px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.widget-badge {
    color: #ffffff;
    font-size: 0.8em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.widget-badge i {
    color: #fbb72c;
    animation: heartBeat 1s ease-in-out infinite;
}

@keyframes heartBeat {
    0% {
        transform: scale(1);
    }
    14% {
        transform: scale(1.2);
    }
    28% {
        transform: scale(1);
    }
    42% {
        transform: scale(1.2);
    }
    70% {
        transform: scale(1);
    }
    100% {
        transform: scale(1);
    }
}

.widget-close {
    color: rgba(249, 33, 33, 0.7);
    font-size: 2.0em;
    cursor: pointer;
    transition: all 0.3s ease;
    line-height: 1;
}

.widget-close:hover {
    color: #ffffff;
    transform: rotate(90deg);
}

/* Widget Body */
.widget-body {
    padding: 18px 20px 20px;
}

.widget-body h4 {
    font-size: 1em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 6px 0;
    line-height: 1.3;
}

.widget-body h6 {
    font-size: 1.2em;
    font-weight: 500;
    color: #f61b1b;
    margin: 0 0 6px 0;
    line-height: 1.0;
}
.widget-body p {
    font-size: 0.8em;
    color: #666;
    margin: 0 0 12px 0;
    line-height: 1.4;
}

/* Countdown */
.widget-countdown {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin: 12px 0 15px;
}

.widget-countdown .countdown-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: #f0f2f5;
    padding: 6px 10px;
    border-radius: 8px;
    min-width: 45px;
}

.widget-countdown .countdown-item span {
    font-size: 1.3em;
    font-weight: 800;
    color: #003366;
    line-height: 1.2;
}

.widget-countdown .countdown-item label {
    font-size: 0.5em;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 2px;
}

/* Widget Actions */
.widget-actions {
    display: flex;
    gap: 10px;
    margin-top: 10px;
}

.widget-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 18px;
    border-radius: 30px;
    font-size: 0.75em;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    flex: 1;
    text-align: center;
}

.register-btn {
    background: #fbb72c;
    color: #003366;
    border: 2px solid #fbb72c;
}

.register-btn:hover {
    background: #e6a520;
    color: #003366;
    transform: translateY(-2px);
    box-shadow: 0 4px 20px rgba(251, 183, 44, 0.4);
}

.register-btn i {
    font-size: 0.9em;
}

.view-btn {
    background: transparent;
    color: #003366;
    border: 2px solid #003366;
}

.view-btn:hover {
    background: #003366;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 20px rgba(0, 51, 102, 0.3);
}

/* ===== RESPONSIVE ===== */
@media(max-width: 991px) {
    .event-widget {
        top: 80px;
        right: 15px;
        width: 280px;
    }
    
    .widget-body h4 {
        font-size: 0.9em;
    }
    
    .widget-countdown .countdown-item {
        min-width: 38px;
        padding: 4px 8px;
    }
    
    .widget-countdown .countdown-item span {
        font-size: 1.1em;
    }
}

@media(max-width: 768px) {
    .event-widget {
        top: 70px;
        right: 10px;
        left: 10px;
        width: auto;
        max-width: 320px;
        margin: 0 auto;
        border-radius: 12px;
    }
    
    .widget-body {
        padding: 14px 16px 16px;
    }
    
    .widget-body h4 {
        font-size: 0.85em;
    }
    
    .widget-body p {
        font-size: 0.75em;
    }
    
    .widget-countdown .countdown-item {
        min-width: 32px;
        padding: 3px 6px;
    }
    
    .widget-countdown .countdown-item span {
        font-size: 0.9em;
    }
    
    .widget-btn {
        font-size: 0.65em;
        padding: 6px 12px;
    }
}

@media(max-width: 480px) {
    .event-widget {
        top: 60px;
        right: 8px;
        left: 8px;
        max-width: 100%;
        border-radius: 10px;
    }
    
    .widget-header {
        padding: 8px 14px;
    }
    
    .widget-badge {
        font-size: 0.65em;
    }
    
    .widget-body {
        padding: 10px 14px 14px;
    }
    
    .widget-body h4 {
        font-size: 0.75em;
    }
    
    .widget-body p {
        font-size: 0.65em;
        margin-bottom: 8px;
    }
    
    .widget-countdown {
        gap: 5px;
        margin: 8px 0 10px;
    }
    
    .widget-countdown .countdown-item {
        min-width: 28px;
        padding: 2px 5px;
    }
    
    .widget-countdown .countdown-item span {
        font-size: 0.8em;
    }
    
    .widget-countdown .countdown-item label {
        font-size: 0.4em;
    }
    
    .widget-actions {
        flex-direction: column;
        gap: 6px;
    }
    
    .widget-btn {
        font-size: 0.6em;
        padding: 6px 10px;
        width: 100%;
    }
}

/*===end of floating widget======*/




/*-- //testimonials --*/

/*--/newsletter--*/

.newsletter_w3ls_agileits {
    padding: 3em 7em;
}

.newsright input[type="email"] {
    outline: none;
    width: 100%;
    padding: 10px 15px;
    color: #848484;
    font-size: 14px;
    border: 1px solid #ddd;
    width: 74%;
    letter-spacing: 3px;
    background: none;
}

.newsright input[type="submit"] {
    border: none;
    padding: 10px 20px 11px;
    font-size: 15px;
    outline: none;
    text-transform: uppercase;
    margin: 0 0 0 -4px;
    font-weight: 600;
    letter-spacing: 1px;
    background: #76daff;
    color: #fff;
}

.newsright input[type="submit"]:hover {
    background: #080808;
    color: #ffffff;
}

.newsleft h3 {
    font-size: 24px;
    margin-top: 15px;
    color: #333;
    letter-spacing: 3px;
    font-weight: 700;
}

.blog_sec {
    padding-top: 7em;
}

/*--//newsletter--*/

.banner_bottom.proj {
    background: #f7f7f7;
}

/*-- /error --*/

.error-404 h4 {
    font-size: 6em;
    font-weight: 700;
    color: #333;
    margin: 0;
    padding: 0;
    font-family: 'Source Sans Pro', sans-serif;
}

a.b-home {
    background: #202020;
    padding: 0.7em 1.5em;
    display: inline-block;
    color: #FFF;
    text-decoration: none;
    margin-top: 1em;
    font-size: 0.9em;
}

a.b-home:hover {
    background: #ff3c41;
}

.error-404 p {
    color: #929090;
    font-size: 1em;
    letter-spacing: 8px;
    margin: 0em 0 2em 0;
}

.error.social-icons {
    margin-bottom: 1em;
}

.error.social-icons a {
    color: #4e4e4e;
}

.error.social-icons a:hover {
    color: #00a78e;
}

.error-404 {
    text-align: center;
}

.error-404 form {
    margin: 0 auto;
    width: 40%;
    text-align: center;
}

.error-404 form input[type="search"] {
    outline: none;
    border: 1px solid #c4c5c5;
    background: none;
    color: #212121;
    padding: 13px 15px;
    width: 80%;
    float: left;
    font-size: 13px;
    letter-spacing: 5px;
}

button.btn1 {
    color: #fff;
    border: none;
    padding: 12px 0;
    text-align: center;
    text-decoration: none;
    background: #76daff;
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
    transition: 0.5s all;
    float: right;
    width: 20%;
}

button.btn1:hover {
    background: #ff3c41;
}

@media(max-width:640px) {
    .error-404 h4 {
        font-size: 9em;
    }
}

@media(max-width:600px) {
    .error-404 h4 {
        font-size: 6em;
    }
    a.b-home {
        padding: 0.6em 1em;
        margin-top: 1em;
    }
}

@media(max-width:480px) {
    .error-404 h4 {
        font-size: 5em;
    }
    .error-404 p {
        font-size: 0.8em;
        letter-spacing: 5px;
        margin: 1em 0;
    }
}

/*-- //error --*/

/*-- /signin-form --*/

/*-- registration --*/

.signin-form {
    padding: 0em 1em 1em 1em;
    text-align: center;
}

.signin-form h3,
h3.agileinfo_sign {
    font-size: 1.5em;
    color: #212121;
    font-weight: 700;
    margin: 1em 0 0.8em 0;
    text-transform: uppercase;
    letter-spacing: 1px;
}

h3.agileinfo_sign {
    text-align: center;
}

.signin-form h3 span {
    color: #67e1ff;
}

.signin-form img {
    border-radius: 50%;
}

.signin-form input[type="email"],
.signin-form input[type="text"],
.signin-form input[type="password"],
.signin-form textarea {
    width: 100%;
    padding: 1em 1em 1em 1em;
    font-size: 0.8em;
    margin: 0.5em 0;
    outline: none;
    color: #212121;
    border: none;
    border: 1px solid #ccc;
    letter-spacing: 1px;
    text-align: left;
}

.signin-form input[type="email"] {
    background: none;
    display: block;
}

.signin-form input[type="text"] {
    background: none;
    display: block;
}

.signin-form input[type="password"] {
    background: none;
    display: block;
}

.signin-form ::-webkit-input-placeholder {
    color: #212121 !important;
}

.signin-form ::-webkit-textarea-placeholder {
    color: #212121 !important;
}

.signin-form textarea {
    min-height: 100px;
}

.signin-form input[type="submit"] {
    outline: none;
    padding: 0.8em 0;
    width: 100%;
    text-align: center;
    font-size: 1em;
    margin-top: 1em;
    border: none;
    color: #FFFFFF;
    text-transform: uppercase;
    cursor: pointer;
    background: #76daff;
    box-shadow: 0px 2px 1px rgba(28, 28, 29, 0.42);
}

.signin-form input[type="submit"]:hover {
    color: #fff;
    background: #000;
    transition: .5s all;
    -webkit-transition: .5s all;
    -moz-transition: .5s all;
    -o-transition: .5s all;
    -ms-transition: .5s all;
}

.signin-form p a {
    font-size: 1em;
    color: #424242;
    letter-spacing: 1px;
    font-weight: 600;
}

.login-social-grids {
    margin: 3em 0 1.5em 0;
}

.login-social-grids ul {
    padding: 0;
    margin: 0;
}

.login-social-grids ul li {
    display: inline-block;
    margin: 0 .5em 0 0;
}

.login-social-grids ul li a {
    color: #FFFFFF;
    text-align: center;
}

.login-social-grids ul li a i.fa.fa-facebook,
.login-social-grids ul li a i.fa.fa-twitter,
.login-social-grids ul li a i.fa.fa-rss {
    height: 30px;
    width: 30px;
    border: solid 2px #212121;
    line-height: 29px;
    background: none;
    color: #212121;
    transition: 0.5s all;
    -webkit-transition: 0.5s all;
    -moz-transition: 0.5s all;
    -o-transition: 0.5s all;
    -ms-transition: 0.5s all;
}

.login-social-grids ul li a i.fa.fa-facebook:hover {
    border: solid 2px #3b5998;
    background: #3b5998;
    color: #FFFFFF;
}

.login-social-grids ul li a i.fa.fa-twitter:hover {
    border: solid 2px #55acee;
    background: #55acee;
    color: #FFFFFF;
}

.login-social-grids ul li a i.fa.fa-rss:hover {
    border: solid 2px #f26522;
    background: #f26522;
    color: #FFFFFF;
}

.modal-header .close {
    float: right !important;
}

.form-control:focus {
    border: 1px solid #ccc;
    outline: 0;
    box-shadow: none !important;
}

.login-form-rec {
    margin: 0 auto;
    width: 45%;
}

h3.tittle-w3ls.three {
    font-size: 2.7em;
}

p.reg {
    margin-top: 3em;
}

.signin-form select#country13 {
    font-weight: normal;
    width: 100%;
    border: none;
    outline: none;
    color: #777;
    background: #fff;
    outline: none;
    font-size: 0.91em;
    padding: 1em 1em;
    border: none;
    letter-spacing: 1px;
    margin-right: 2px;
    border: 1px solid #cccaca;
    margin-bottom: 7px;
    text-align: center;
}

/*-- //registration --*/

/*-- //signin-form --*/

/*-- footer --*/

.footer {
    padding: 4em 0;
    background: #080808;
}

.footer_inner_info_w3ls_agileits {
    width: 90%;
    margin: 0 auto;
}

ul.social-nav.model-3d-0.footer-social.social.two {
    float: none;
}

.footer-left p {
    color: #737070;
    line-height: 2em;
    font-size: 14px;
    margin-top: 22px;
}

.sign-gd h4,
.sign-gd-two h4 {
    color: #fff;
    font-size: 1.4em;
    margin-bottom: 25px;
    font-weight: 700;
    letter-spacing: 1px;
}

.sign-gd h4 span,
.sign-gd-two h4 span {
    font-weight: 300;
}

.sign-gd ul li,
.sign-gd-two ul li {
    color: #848484;
    line-height: 2em;
    font-size: 14px;
    list-style-type: none;
}

.sign-gd ul li a,
.sign-gd-two ul li a {
    color: #737070;
    letter-spacing: 1px;
}

.sign-gd ul li a:hover,
.sign-gd-two ul li a:hover {
    color: #ffffff;
}

.post-grid:nth-child(2) {
    margin: 1em 0;
}

.address-left {
    float: left;
    width: 10%;
}

.address-left i.fa.fa-phone,
.address-left i.fa.fa-envelope,
.address-left i.fa.fa-map-marker {
    color: #FFFFFF;
    font-size: 1em;
}

.address-right {
    float: right;
    width: 87%;
}

.address-right h6 {
    color: #FFFFFF;
    font-size: 0.9em;
    margin: 0;
    font-weight: 600;
    letter-spacing: 1px;
}

.address-right p {
    margin: 1em 0 0 0;
    font-size: .9em;
    color: #565656;
}

.address-right p a {
    color: #76daff;
    text-decoration: none;
}

.address-right p a:hover {
    color: #b5b5b5;
}

.address-right p span {
    display: block;
    margin: .5em 0;
}

ul.social-nav.model-3d-0.footer-social.social.two {
    margin-top: 2em;
}

.social-nav li {
    display: inline-block;
    margin: 0 6px;
}

.social-nav a {
    display: inline-block;
    float: none;
    width: 30px;
    height: 30px;
    text-decoration: none;
    cursor: pointer;
    text-align: center;
    line-height: 30px;
    background: #000;
    position: relative;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}

.model-3d-0 a {
    background: #5C5B5B;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    -o-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

.model-3d-0 .front,
.model-3d-0 .back {
    width: 30px;
    height: 30px;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translateZ(18px);
    -moz-transform: translateZ(18px);
    -ms-transform: translateZ(18px);
    -o-transform: translateZ(18px);
    transform: translateZ(18px);
    -webkit-backface-visibility: visible;
    -moz-backface-visibility: visible;
    -ms-backface-visibility: visible;
    -o-backface-visibility: visible;
    backface-visibility: visible;
    color: #212121;
    font-size: 12px;
}

.model-3d-0 .back {
    -webkit-transform: rotateX(90deg) translateZ(18px);
    -moz-transform: rotateX(90deg) translateZ(18px);
    -ms-transform: rotateX(90deg) translateZ(18px);
    -o-transform: rotateX(90deg) translateZ(18px);
    transform: rotateX(90deg) translateZ(18px);
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -o-backface-visibility: hidden;
    backface-visibility: hidden;
}

a.twitter .front {
    background: #00acee;
}

a.facebook .front {
    background: #3b5998;
}

a.instagram .front {
    background: #f77737;
}

a.pinterest .front {
    background: #bd081c;
}

.twitter .back,
.facebook .back,
.instagram .back,
.pinterest .back {
    background: #fff;
}

.model-3d-0 a:hover {
    -webkit-transform: rotateX(-90deg);
    -moz-transform: rotateX(-90deg);
    -ms-transform: rotateX(-90deg);
    -o-transform: rotateX(-90deg);
    transform: rotateX(-90deg);
}

.model-3d-0 a:hover .back {
    -webkit-backface-visibility: visible;
    -moz-backface-visibility: visible;
    -ms-backface-visibility: visible;
    -o-backface-visibility: visible;
    backface-visibility: visible;
}

.social .front i {
    color: #fff;
    font-size: 12px;
}

.social .back i {
    color: #000;
    font-size: 12px;
}

/*--social icons--*/

.address-grid:nth-child(2) {
    margin: 0.7em 0;
}

.flickr-post ul li {
    display: inline-block;
    margin: 5px 5px;
}

.flickr-post ul li {
    display: inline-block;
    margin: 1% 1%;
    width: 28%;
    border: 1px solid #212020;
    padding: 4px;
}

p.copy-right {
    color: #848484;
    text-align: center;
    margin-top: 55px;
    font-size: 14px;
    border-top: 1px solid #0e0e0e;
    padding-top: 3em;
}

p.copy-right a {
    color: #76daff;
    text-decoration: none;
}

p.copy-right a:hover {
    color: #848484;
}

.footer-left h2 a {
    font-size: 1em;
    color: #7e8184;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(29, 28, 28, 0.9);
}

.footer-left h2 i.fa {
    color: #76daff;
}

.footer-left h2 a span {
    padding: 6px 10px;
    background: #444242;
    font-weight: 700;
}

/*-- //footer --*/

#toTop {
    display: none;
    text-decoration: none;
    position: fixed;
    bottom: 20px;
    right: 2%;
    overflow: hidden;
    z-index: 999;
    width: 32px;
    height: 32px;
    border: none;
    text-indent: 100%;
    background: url(../images/top_move.png) no-repeat 0px 0px;
}

/*--responsive--*/

@media(max-width:1440px){
	h3.tittle-w3ls {
        font-size: 2.5em;
    }
    .banner_bottom,.works,.banner_bottom,.blog_sec,.tesimonials {
        padding:6em 0;
    }
}
@media(max-width:1280px){
	.carousel-caption h2, .carousel-caption h3 {
        font-size: 3.5em;
    }
    .carousel-caption {
        min-height: 630px !important;
        padding-top: 17em;
        text-align: center;
    }
    .banner_bottom_left h4 {
        font-size: 1.2em;
    }
}
@media(max-width:1080px){
    .banner_bottom,.works,.banner_bottom,.blog_sec,.tesimonials {
        padding:5em 0;
    }
    .navbar-nav>li>a {
        padding: 7px 15px;
    }
    .top-buttons {
        margin: 2em auto 0;
        width: 29%;
    }
    .banner_bottom_left h4 {
        font-size: 1em;
    }
    p {
        letter-spacing: 1px;
        font-size: 0.9em;
    }
    .banner_bottom_in {
        margin: 0 auto;
        width: 87%;
    }
    .test_img_info {
        width: 70%;
    }
    .test_img_info {
        width: 70%;
    }
    .inner_sec_info_wthree_agile {
        margin-top: 3em;
    }
    .newsletter_w3ls_agileits {
        padding: 3em 1em;
    }
}
@media(max-width:1050px){
    .banner-btm-inner {
        flex: 1;
        padding: 4em 2em;
    }
    .footer {
        padding: 3em 0;
    }
    .carousel-indicators {
        bottom: 14%;
        left: 50%;
    }
    #quote-carousel .carousel-indicators {
        left: 40%;
        top: auto;
        bottom: -26px;
    }
}
@media(max-width:1024px){
	.nav_top_fx_w3ls_agileinfo {
        width: 95%;
        padding: 1.4em 0;
    }
    .carousel-caption h2, .carousel-caption h3 {
        font-size: 3em;
        letter-spacing: 1px;
    }
    .banner-btm-inner h6 a {
        letter-spacing: 1px;
    }
}
@media(max-width:991px){
	.carousel-caption p {
        letter-spacing: 6px;
        font-size: 1em;
        margin: 1em 0 1em 0;
    }
    .top-buttons {
        margin: 2em auto 0;
        width: 37%;
    }
    .carousel-caption {
        min-height: 584px !important;
        padding-top: 15em;
        text-align: center;
    }
    .ser-first-grid{
        margin-bottom: 1em;
    }
    .error-404 p {
        font-size: 0.9em;
        letter-spacing: 5px;
        margin: 0em 0 2em 0;
    }
    .error-404 form {
        margin: 0 auto;
        width: 60%;
        text-align: center;
    }
    .logo-w3layouts-agileits h4 a {
        font-size: 0.8em;
        color: #76daff;

    }
    .navbar-nav>li>a {
        padding: 7px 20px;
        letter-spacing: 1px;
        font-size: 0.75em;
        font-weight: 600;
    }
    .help_full img, .help_full img {
        width: 57%;
        margin-bottom: 2em;
    }
    .flickr-post ul li {
        margin: 1% 1%;
        width: 15%;
        padding: 4px;
    }
    .sign-gd {
        margin: 1em 0;
    }
    .sign-gd-two {
        margin-top: 1em;
    }
    .footer_inner_info_w3ls_agileits {
        width: 98%;
        margin: 0 auto;
    }
    .footer-right {
        padding: 0;
    }
    .banner_inner_con {
        min-height: 280px;
    }
    .banner_bottom_left {
        margin-bottom: 2em;
    }
    h3.tittle-w3ls.we {
        font-size: 1.8em;
    }
}
@media(max-width:900px){
	.carousel-caption {
        min-height: 565px !important;
        padding-top: 15em;
        text-align: center;
    }
    .sign-gd h4, .sign-gd-two h4 {
        font-size: 1.2em;
        margin-bottom: 22px;
        font-weight: 700;
        letter-spacing: 1px;
    }
    .newsleft h3 {
        font-size: 20px;
        margin-top: 15px;
        letter-spacing: 1px;
    }
    .newsright input[type="email"] {
        padding: 10px 15px;
        width: 69%;
    }
    .banner_bottom_left h4 {
        font-size: 1.2em;
    }
}
@media(max-width:800px){
	.carousel-caption h2, .carousel-caption h3 {
        font-size: 2.5em;
        letter-spacing: 1px;
    }
    .banner_bottom, .works, .banner_bottom, .blog_sec, .tesimonials {
        padding: 4em 0;
    }
}
@media(max-width:768px){
	
}
@media(max-width:767px){
	.navbar-nav {
        float: none;
        margin: 0;
        top:40px
    }
    .nav > li {
        position: relative;
        display: block;
        margin-bottom: 0.5em;
    }
    .navbar-default .navbar-collapse, .navbar-default .navbar-form {
        border-color: #e7e7e7;
        background: #e0e0e0;
        margin-top: 1em;
    }
    .navbar-toggle {
        position: relative;
        float: right;
        padding: 12px 10px;
        margin-top: 2px;
        margin-right: 0px;
        margin-bottom: 8px;
        background-color: transparent;
        background-image: none;
        border: 1px solid transparent;
        border-radius: 4px;
    }
    .test_img_info {
        width: 100%;
        margin-top: 1em;
        padding: 0;
    }  
    #quote-carousel .carousel-indicators {
        left: 10%;
        top: auto;
        bottom: -26px;
    } 
    .news-main {
        margin-top: 1em;
        padding-top: 2em;
    }
    h3.tittle-w3ls.three {
        font-size: 1.8em;
    }
    .login-form-rec {
        margin: 0 auto;
        width: 50%;
    }
}
@media(max-width:736px){
	.top-buttons {
        margin: 2em auto 0;
        width: 39%;
    }
    .carousel-caption {
        min-height: 523px !important;
        padding-top: 13em;
        text-align: center;
    }
    #quote-carousel .carousel-indicators {
        left: 10%;
        top: auto;
        bottom: -26px;
    }
    .carousel-control {
        line-height: 32em;
    }
}
@media(max-width:684px){
	.footer {
        padding: 2em 0;
    }
    .bnr-button a {
        padding: .8em 1.3em;
        letter-spacing: 2px;
        font-size: 0.7em;
    }
    .carousel-caption p {
        letter-spacing: 5px;
        font-size: 0.9em;
        margin: 1em 0 0em 0;
    }
    .carousel-caption {
        min-height: 483px !important;
        padding-top: 12em;
        text-align: center;
    }
    .banner_inner_con {
        min-height: 243px;
    }
    h3.tittle-w3ls.we {
        font-size: 1.8em;
    }
}
@media(max-width:667px){
	.footer {
        padding: 2em 0;
    }
    .bnr-button a {
        padding: .8em 1.3em;
        letter-spacing: 2px;
        font-size: 0.7em;
    }
    .carousel-caption p {
        letter-spacing: 5px;
        font-size: 0.9em;
        margin: 1em 0 0em 0;
    }
    .carousel-caption {
        min-height: 483px !important;
        padding-top: 12em;
        text-align: center;
    }
    .banner_inner_con {
        min-height: 243px;
    }
    h3.tittle-w3ls.we {
        font-size: 1.8em;
    }
}
@media(max-width:640px){
	.top-buttons {
        margin: 2em auto 0;
        width: 41%;
    }
    .carousel-caption h2, .carousel-caption h3 {
        font-size: 2.3em;
        letter-spacing: 1px;
    }
    h3.tittle-w3ls {
        font-size: 2.3em;
    }
    .newsleft {
        margin-bottom: 1em;
    }
}
@media(max-width:600px){
	.top-buttons {
        margin: 2em auto 0;
        width: 45%;
    }
    .carousel-caption {
        min-height: 450px !important;
        padding-top: 11em;
        text-align: center;
    }
    .carousel-indicators {
        bottom: 10%;
        left: 50%;
    }
    .banner_bottom_in {
        margin: 0 auto;
        width: 90%;
    }
    .login-form-rec {
        margin: 0 auto;
        width: 85%;
    }
}
@media(max-width:568px){
	.top-buttons {
        margin: 2em auto 0;
        width: 48%;
    }
    .carousel-caption h2, .carousel-caption h3 {
        font-size: 2.2em;
        letter-spacing: 1px;
    }
    .carousel-caption {
        min-height: 428px !important;
        padding-top: 11em;
        text-align: center;
    }
    .carousel-control {
        line-height: 29em;
    }
    .banner_bottom, .works, .banner_bottom, .blog_sec, .tesimonials {
        padding: 3em 0;
    }
    .inner_sec_info_wthree_agile {
        margin-top: 2em;
    }
    .error-404 form {
        margin: 0 auto;
        width: 90%;
        text-align: center;
    }
}
@media(max-width:480px){
	.top-buttons {
        margin: 2em auto 0;
        width: 54%;
    }
    h3.tittle-w3ls {
        font-size: 2em;
    }
    .banner-btm-inner {
        flex: 1;
        padding: 2em 1em;
    }
    .carousel-caption h2, .carousel-caption h3 {
        font-size: 1.8em;
        letter-spacing: 1px;
    }
    .top-buttons {
        margin: 1em auto 0;
        width: 57%;
    }
    .carousel-caption {
        min-height: 406px !important;
        padding-top: 11em;
        text-align: center;
    }
    #quote-carousel .carousel-indicators {
        left: 19%;
        top: auto;
        bottom: -26px;
    }
    .test_img_info p {
        margin-bottom: 1em;
        font-size: 0.85em;
    }
    .newsletter_w3ls_agileits {
        padding: 2em 1em;
    }
}
@media(max-width:440px){
	.bnr-button a {
        padding: .6em 1em;
        letter-spacing: 1px;
        font-size: 0.7em;
    }

    .logo-w3layouts-agileits h4 a {
        font-size: 0.6em;
        color: #76daff;
    }

    
    .carousel-caption p {
        letter-spacing: 4px;
        font-size: 0.7em;
        margin: 1em 0 0em 0;
    }
    h3.tittle-w3ls {
        font-size: 1.8em;
    }
}
@media(max-width:414px){
	.carousel-caption h2, .carousel-caption h3 {
        font-size: 1.8em;
        letter-spacing: 1px;
    }
    .banner_bottom_left h4,.ser-first-grid h3 {
        font-size: 1.1em;
    }
    h3.tittle-w3ls.we {
        font-size: 1.4em;
    }
    .help_full img, .help_full img {
        width: 99%;
        margin-bottom: 2em;
    }
    .inner_sec_info_wthree_agile {
        margin-top: 1.5em;
    }
    .banner_inner_con {
        min-height: 204px;
    }
    .banner-btm-inner h6 {
        font-size: 0.9em;
    }
}
@media(max-width:412px){
    .carousel-caption h2, .carousel-caption h3 {
        font-size: 1.7em;
        letter-spacing: 1px;
    }
    h3.tittle-w3ls {
        font-size: 1.6em;
    }
}
@media(max-width:384px){
	.top-buttons {
        margin: 1em auto 0;
        width: 65%;
    }
    .banner_bottom, .works, .banner_bottom, .blog_sec, .tesimonials {
        padding: 2em 0;
    }
    .carousel-caption {
        min-height: 380px !important;
        padding-top: 10em;
    }
    .carousel-control {
        line-height: 24em;
    }
}
@media(max-width:375px){
	.top-buttons {
        margin: 1em auto 0;
        width: 65%;
    }
    .nav_top_fx_w3ls_agileinfo {
        width: 93%;
        padding: 1.2em 0;
    }
}
@media(max-width:320px){
	.carousel-caption h2, .carousel-caption h3 {
        font-size: 1.4em;
        letter-spacing: 1px;
    }
    .top-buttons {
        margin: 1em auto 0;
        width: 78%;
    }
    .carousel-caption {
        min-height: 339px !important;
        padding-top: 9em;
    }
    .carousel-indicators {
        bottom: 6%;
        left: 50%;
    }
    .ab_button a {
        padding: 0.8em 1.5em;
    }
    .banner_bottom_grid_left {
        padding: 0;
    }
    .banner_bottom_left h4, .ser-first-grid h3 {
        font-size: 0.95em;
    }
    h3.tittle-w3ls.we {
        font-size: 1.2em;
    }
    h3.tittle-w3ls {
        font-size: 1.4em;
    }
    .banner_inner_con {
        min-height: 165px;
    }
}
/*--//responsive--*/


/*============  additional about page style==============*/
/* ===== TEAM SECTION ===== */
.team-section {
    margin-bottom: 50px;
}

.section-title {
    font-size: 1.8em;
    font-weight: 700;
    color: #003366;
    text-align: center;
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.section-title .title-icon {
    display: inline-block;
    background: #fbb72c;
    color: #003366;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 50%;
    font-size: 0.7em;
    text-align: center;
}

.section-subtitle {
    text-align: center;
    color: #666;
    font-size: 1em;
    margin-bottom: 30px;
}

/* ===== TEAM CARDS ===== */
.team-grid {
    margin-bottom: 20px;
}

.team-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.4s ease;
    margin-bottom: 25px;
    border: 1px solid rgba(0, 0, 0, 0.04);
}

.team-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 8px 40px rgba(0, 51, 102, 0.15);
    border-color: #fbb72c;
}

.team-img {
    position: relative;
    overflow: hidden;
    background: #f0f2f5;
    height: 220px;
}

.team-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

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

/* Fallback avatar if no image */
.team-img .avatar-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    background: linear-gradient(135deg, #003366, #1a4a7a);
    color: #ffffff;
    font-size: 4em;
}

/* Overlay */
.team-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 51, 102, 0.75);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease;
}

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

.team-overlay a {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 40px;
    background: #fbb72c;
    color: #003366;
    border-radius: 50%;
    text-align: center;
    transition: all 0.3s ease;
    font-size: 1em;
    text-decoration: none;
    transform: translateY(20px);
    opacity: 0;
}

.team-card:hover .team-overlay a {
    transform: translateY(0);
    opacity: 1;
}

.team-overlay a:hover {
    background: #ffffff;
    color: #003366;
    transform: scale(1.1);
}

.team-overlay a:nth-child(1) { transition-delay: 0.05s; }
.team-overlay a:nth-child(2) { transition-delay: 0.1s; }

/* Team Info */
.team-info {
    padding: 18px 20px 20px;
    text-align: center;
}

.team-info h5 {
    font-size: 1.1em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 3px 0;
}

.team-info .position {
    display: inline-block;
    font-size: 0.8em;
    font-weight: 600;
    color: #fbb72c;
    background: rgba(251, 183, 44, 0.1);
    padding: 2px 15px;
    border-radius: 20px;
    margin-bottom: 6px;
}

.team-info p {
    font-size: 0.8em;
    color: #666;
    margin: 0;
    line-height: 1.4;
}

.team-info p i {
    color: #fbb72c;
    margin-right: 4px;
}

/* ===== DIVIDER ===== */
.team-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px 0 50px;
    position: relative;
}

.team-divider::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    height: 2px;
    background: linear-gradient(to right, transparent, #fbb72c, transparent);
}

.team-divider span {
    display: inline-block;
    background: #ffffff;
    padding: 0 25px;
    position: relative;
    z-index: 1;
    font-size: 2em;
    color: #fbb72c;
}

.avatar-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    background: linear-gradient(135deg, #003366, #1a4a7a);
    color: rgba(255, 255, 255, 0.3);
    font-size: 5em;
}

/* ===== RESPONSIVE ===== */
@media(max-width: 991px) {
    .team-img {
        height: 200px;
    }
    
    .section-title {
        font-size: 1.5em;
    }
}

@media(max-width: 768px) {
    .team-card {
        max-width: 300px;
        margin: 0 auto 25px;
    }
    
    .team-img {
        height: 180px;
    }
    
    .section-title {
        font-size: 1.3em;
    }
    
    .section-title .title-icon {
        width: 32px;
        height: 32px;
        line-height: 32px;
        font-size: 0.6em;
    }
}

@media(max-width: 480px) {
    .team-img {
        height: 160px;
    }
    
    .team-info h5 {
        font-size: 0.95em;
    }
    
    .team-info .position {
        font-size: 0.7em;
    }
    
    .section-title {
        font-size: 1.1em;
    }
}



/*============//// additional about page style==============*/


/*========= membership ========================*/
/* ===== MEMBERSHIP CARDS ===== */
.membership-types {
    margin: 40px 0 20px;
}

.membership-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 30px 20px 25px;
    text-align: center;
    box-shadow: 0 2px 25px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 0, 0, 0.04);
    transition: all 0.4s ease;
    position: relative;
    margin-bottom: 25px;
    height: 100%;
}

.membership-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 10px 50px rgba(0, 51, 102, 0.12);
    border-color: #fbb72c;
}

.membership-icon {
    display: inline-block;
    width: 70px;
    height: 70px;
    line-height: 70px;
    background: linear-gradient(135deg, #003366, #1a4a7a);
    color: #fbb72c;
    border-radius: 50%;
    font-size: 2em;
    margin-bottom: 15px;
    transition: all 0.4s ease;
}

.membership-card:hover .membership-icon {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 5px 25px rgba(0, 51, 102, 0.3);
}

.membership-card h5 {
    font-size: 1.2em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 10px 0;
}

.membership-desc {
    font-size: 0.85em;
    color: #666;
    line-height: 1.5;
    margin-bottom: 15px;
    min-height: 40px;
}

.membership-features {
    list-style: none;
    padding: 0;
    margin: 0 0 18px 0;
    text-align: left;
}

.membership-features li {
    font-size: 0.8em;
    color: #555;
    padding: 4px 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.membership-features li i {
    color: #fbb72c;
    font-size: 0.9em;
    width: 18px;
}

.read-more-btn {
    display: inline-block;
    padding: 8px 25px;
    background: transparent;
    color: #003366;
    border: 2px solid #003366;
    border-radius: 30px;
    font-weight: 600;
    font-size: 0.8em;
    transition: all 0.3s ease;
    cursor: pointer;
}

.read-more-btn:hover {
    background: #003366;
    color: #ffffff;
    transform: translateX(5px);
}

.read-more-btn i {
    transition: all 0.3s ease;
}

.read-more-btn:hover i {
    transform: translateX(5px);
}

.membership-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    font-size: 0.6em;
    font-weight: 700;
    text-transform: uppercase;
    padding: 3px 12px;
    border-radius: 20px;
    letter-spacing: 0.5px;
}

/* Badge Colors */
.membership-card:nth-child(1) .membership-badge {
    background: #fbb72c;
    color: #003366;
}

.membership-card:nth-child(2) .membership-badge {
    background: #e8f0fe;
    color: #1a73e8;
}

.membership-card:nth-child(3) .membership-badge {
    background: #fce8e6;
    color: #d93025;
}

.membership-card:nth-child(4) .membership-badge {
    background: #e6f4ea;
    color: #1e8e3e;
}

/* ===== MODAL STYLING ===== */
.modal-content {
    border-radius: 16px;
    border: none;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
}

.modal-header {
    background: linear-gradient(135deg, #003366, #1a4a7a);
    color: #ffffff;
    padding: 25px 30px;
    border-bottom: 3px solid #fbb72c;
    position: relative;
}

.modal-header .close {
    color: #ffffff;
    opacity: 0.7;
    font-size: 1.8em;
    transition: all 0.3s ease;
}

.modal-header .close:hover {
    opacity: 1;
    transform: rotate(90deg);
}

.modal-icon {
    display: inline-block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    background: #fbb72c;
    color: #003366;
    border-radius: 50%;
    text-align: center;
    font-size: 1.5em;
    margin-right: 12px;
}

.modal-title {
    font-size: 1.5em;
    font-weight: 700;
    line-height: 50px;
}

.modal-badge {
    display: inline-block;
    background: #fbb72c;
    color: #003366;
    padding: 2px 15px;
    border-radius: 20px;
    font-size: 0.7em;
    font-weight: 700;
    text-transform: uppercase;
    margin-left: 10px;
    vertical-align: middle;
}

.modal-body {
    padding: 30px;
}

.modal-section {
    margin-bottom: 25px;
    padding-bottom: 20px;
    border-bottom: 1px solid #f0f0f0;
}

.modal-section:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.modal-section h5 {
    font-size: 1em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 10px 0;
}

.modal-section h5 i {
    color: #fbb72c;
    margin-right: 8px;
}

.modal-section p {
    font-size: 0.9em;
    color: #555;
    line-height: 1.6;
    margin: 0;
}

.modal-section ul,
.modal-section ol {
    padding-left: 20px;
    margin: 0;
}

.modal-section ul li,
.modal-section ol li {
    font-size: 0.9em;
    color: #555;
    line-height: 1.8;
}

.modal-footer {
    padding: 20px 30px;
    background: #f8f9fa;
    border-top: 1px solid #eee;
    display: flex;
    gap: 12px;
    justify-content: flex-end;
}

.apply-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 30px;
    background: #fbb72c;
    color: #003366;
    border-radius: 30px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
}

.apply-btn:hover {
    background: #003366;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 5px 25px rgba(0, 51, 102, 0.3);
}

.close-modal-btn {
    padding: 10px 25px;
    background: transparent;
    color: #666;
    border: 2px solid #ddd;
    border-radius: 30px;
    font-weight: 600;
    transition: all 0.3s ease;
    cursor: pointer;
}

.close-modal-btn:hover {
    background: #f0f0f0;
    border-color: #999;
}

/* ===== JOIN BUTTON ===== */
.join-now-row {
    margin-top: 20px;
    padding: 20px 0;
}

.join-now-btn {
    display: inline-block;
    padding: 14px 45px;
    background: #fbb72c;
    color: #003366;
    font-size: 1.1em;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 50px;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    box-shadow: 0 4px 20px rgba(251, 183, 44, 0.4);
    border: 2px solid #fbb72c;
    animation: heartbeat 1.5s ease-in-out infinite;
}

.join-now-btn i {
    margin-left: 10px;
    transition: all 0.3s ease;
}

.join-now-btn:hover {
    background: transparent;
    color: #fbb72c;
    transform: translateY(-3px);
    box-shadow: 0 8px 30px rgba(251, 183, 44, 0.6);
    animation: none;
}

.join-now-btn:hover i {
    transform: translateX(8px);
}

@keyframes heartbeat {
    0%, 100% { transform: scale(1); }
    14% { transform: scale(1.05); }
    28% { transform: scale(1); }
    42% { transform: scale(1.05); }
    70% { transform: scale(1); }
}

/* ===== RESPONSIVE ===== */
@media(max-width: 991px) {
    .membership-card {
        padding: 25px 15px;
    }
    
    .modal-body {
        padding: 20px;
    }
}

@media(max-width: 768px) {
    .membership-card {
        max-width: 350px;
        margin: 0 auto 25px;
    }
    
    .membership-icon {
        width: 60px;
        height: 60px;
        line-height: 60px;
        font-size: 1.5em;
    }
    
    .modal-header {
        padding: 20px;
    }
    
    .modal-title {
        font-size: 1.2em;
    }
    
    .modal-footer {
        flex-direction: column;
        gap: 8px;
    }
    
    .apply-btn,
    .close-modal-btn {
        width: 100%;
        text-align: center;
        justify-content: center;
    }
}

@media(max-width: 480px) {
    .membership-card h5 {
        font-size: 1em;
    }
    
    .membership-desc {
        font-size: 0.8em;
    }
    
    .modal-section h5 {
        font-size: 0.9em;
    }
    
    .modal-section p,
    .modal-section ul li,
    .modal-section ol li {
        font-size: 0.8em;
    }
}

.join-community {
    background: #f8f9fa;
    padding: 20px 25px;
    border-radius: 10px;
    border-left: 4px solid #fbb72c;
    margin-top: 20px;
}

.join-community p {
    margin: 0;
    font-size: 1em;
    color: #333;
}

.join-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #fbb72c;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
}

.join-link:hover {
    color: #003366;
    transform: translateX(5px);
}

.join-link i {
    transition: all 0.3s ease;
}

.join-link:hover i {
    transform: translateX(5px);
}

/* File Upload Styling */
.file-upload-wrapper {
    margin-top: 5px;
}

.file-upload-area {
    border: 2px dashed #ddd;
    border-radius: 10px;
    padding: 30px 20px;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    background: #fafafa;
    position: relative;
}

.file-upload-area:hover {
    border-color: #fbb72c;
    background: #f8f4ea;
}

.file-upload-area.dragover {
    border-color: #fbb72c;
    background: #fff8e6;
}

.file-upload-area i {
    font-size: 2.5em;
    color: #fbb72c;
    display: block;
    margin-bottom: 10px;
}

.file-upload-area p {
    margin: 5px 0;
    color: #666;
    font-size: 1em;
}

.file-upload-area small {
    color: #888;
    font-size: 0.8em;
    display: block;
}

.file-upload-area input[type="file"] {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.file-info {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #e8f5e9;
    border-radius: 8px;
    border: 1px solid #4caf50;
    margin-top: 10px;
}

.file-info i {
    font-size: 1.5em;
    color: #d93025;
}

.file-info #fileName {
    flex: 1;
    font-weight: 500;
    color: #333;
    font-size: 0.9em;
}

.file-info #fileSize {
    color: #888;
    font-size: 0.8em;
}

.remove-file {
    background: transparent;
    border: none;
    font-size: 1.2em;
    color: #999;
    cursor: pointer;
    padding: 0 4px;
    transition: all 0.3s ease;
}

.remove-file:hover {
    color: #d93025;
    transform: rotate(90deg);
}

/* Form Actions */
.form-actions {
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid #eee;
    display: flex;
    gap: 12px;
}

.btn-submit {
    padding: 12px 35px;
    background: #fbb72c;
    color: #003366;
    border: none;
    border-radius: 30px;
    font-weight: 600;
    font-size: 1em;
    transition: all 0.3s ease;
    cursor: pointer;
}

.btn-submit:hover {
    background: #003366;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 5px 20px rgba(0, 51, 102, 0.3);
}

.btn-cancel {
    padding: 12px 25px;
    background: #f0f2f5;
    color: #666;
    border: none;
    border-radius: 30px;
    font-weight: 600;
    font-size: 1em;
    text-decoration: none;
    transition: all 0.3s ease;
}

.btn-cancel:hover {
    background: #e0e0e0;
}



/*=====//// about_kaha member section =========================*/


/*=======membership page =========================*/
/* ===== MEMBERSHIP SERVICES ===== */
.membership-services {
    margin: 30px 0;
}

.section-subtitle {
    text-align: center;
    color: #666;
    font-size: 1em;
    margin-bottom: 30px;
}

/* Service Cards */
.service-card {
    border-left: 4px solid #fbb72c;
    background: #ffffff;
    border-radius: 16px;
    padding: 35px 30px;
    text-align: center;
    box-shadow: 0 2px 25px rgba(0, 0, 0, 0.06);
    transition: all 0.4s ease;
    margin-bottom: 25px;
    height: 100%;
}

.service-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 10px 50px rgba(0, 51, 102, 0.12);
    border-color: #fbb72c;
}

.service-icon-wrapper {
    display: inline-block;
    width: 80px;
    height: 80px;
    line-height: 80px;
    background: linear-gradient(135deg, #003366, #1a4a7a);
    color: #fbb72c;
    border-radius: 50%;
    font-size: 2.2em;
    margin-bottom: 18px;
    transition: all 0.4s ease;
}

.service-card:hover .service-icon-wrapper {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 5px 25px rgba(0, 51, 102, 0.3);
}

.service-card h4 {
    font-size: 1.3em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 10px 0;
}

.service-card p {
    font-size: 0.9em;
    color: #666;
    line-height: 1.6;
    margin-bottom: 20px;
}

.service-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 30px;
    background: #fbb72c;
    color: #003366;
    border: 2px solid #fbb72c;
    border-radius: 30px;
    font-weight: 700;
    font-size: 0.85em;
    transition: all 0.3s ease;
    cursor: pointer;
    text-decoration: none;
}

.service-btn:hover {
    background: #003366;
    color: #ffffff;
    border-color: #003366;
    transform: translateX(5px);
}

.service-btn i {
    transition: all 0.3s ease;
}

.service-btn:hover i {
    transform: translateX(5px);
}

/* Renew Card */
.renew-card {
    border-left: 4px solid #fbb72c;
}

.renew-btn {
    background: #d93025;
    color: #ffffff;
    border-color: #d93025;
}

.renew-btn:hover {
    background: #b71c1c;
    color: #ffffff;
    border-color: #b71c1c;
}

/* ===== MEMBERSHIP OPTIONS (Radio Buttons) ===== */
.membership-type-group {
    margin: 20px 0;
}

.membership-options {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 10px;
}

.membership-option {
    position: relative;
}

.membership-option input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.membership-option label {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 15px;
    background: #f8f9fa;
    border: 2px solid #e8eaed;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.3s ease;
    margin: 0;
}

.membership-option input[type="radio"]:checked + label {
    border-color: #fbb72c;
    background: #fff8e6;
    box-shadow: 0 0 0 3px rgba(251, 183, 44, 0.2);
}

.membership-option label:hover {
    border-color: #fbb72c;
    background: #fafafa;
}

.option-icon {
    font-size: 1.2em;
    color: #003366;
    width: 30px;
    text-align: center;
}

.option-title {
    font-weight: 600;
    color: #003366;
    font-size: 0.85em;
}

.option-desc {
    font-size: 0.7em;
    color: #888;
    margin-left: auto;
}

/* ===== FORM STYLES ===== */
.form-group {
    margin-bottom: 18px;
}

.form-group label {
    font-weight: 600;
    color: #333;
    font-size: 0.85em;
    display: block;
    margin-bottom: 5px;
}

.form-group label i {
    color: #fbb72c;
    width: 20px;
}

.required {
    color: #d93025;
    font-weight: 700;
}

.form-control {
    border-radius: 8px;
    border: 1px solid #ddd;
    padding: 10px 15px;
    font-size: 0.9em;
    transition: all 0.3s ease;
    width: 100%;
}

.form-control:focus {
    border-color: #fbb72c;
    box-shadow: 0 0 0 3px rgba(251, 183, 44, 0.15);
}

.help-text {
    display: block;
    font-size: 0.75em;
    color: #888;
    margin-top: 4px;
}

textarea.form-control {
    resize: vertical;
    min-height: 80px;
}

.verification-info {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 15px;
    background: #e8f0fe;
    border-radius: 8px;
    margin-top: 15px;
}

.verification-info i {
    color: #1a73e8;
    font-size: 1.2em;
    margin-top: 2px;
}

.verification-info p {
    font-size: 0.8em;
    color: #555;
    margin: 0;
    line-height: 1.5;
}

/* ===== RESPONSIVE ===== */
@media(max-width: 991px) {
    .membership-options {
        grid-template-columns: 1fr 1fr;
    }
    
    .service-card {
        padding: 25px 20px;
    }
}

@media(max-width: 768px) {
    .membership-options {
        grid-template-columns: 1fr;
    }
    
    .service-card {
        max-width: 400px;
        margin: 0 auto 20px;
    }
    
    .service-icon-wrapper {
        width: 60px;
        height: 60px;
        line-height: 60px;
        font-size: 1.5em;
    }
    
    .service-card h4 {
        font-size: 1.1em;
    }
    
    .modal-header {
        padding: 20px;
    }
    
    .modal-title {
        font-size: 1.1em;
    }
    
    .modal-body {
        padding: 20px;
    }
}

@media(max-width: 480px) {
    .membership-option label {
        padding: 10px 12px;
    }
    
    .option-title {
        font-size: 0.75em;
    }
    
    .option-desc {
        font-size: 0.6em;
    }
    
    .service-btn {
        font-size: 0.75em;
        padding: 8px 20px;
    }
    
    .form-control {
        font-size: 0.8em;
        padding: 8px 12px;
    }
}

/* ===== MODAL INFO BANNER ===== */
.modal-info-banner {
    margin-top: 2%;
    background: linear-gradient(135deg, #e8f0fe, #d2e3fc);
    padding: 12px 25px;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    border-bottom: 2px solid #fbb72c;
}

.modal-info-banner i {
    color: #1a73e8;
    font-size: 1.2em;
}

.modal-info-banner span {
    color: #333;
    font-size: 0.85em;
    font-weight: 500;
}

.info-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #003366;
    font-weight: 700;
    font-size: 0.85em;
    text-decoration: none;
    transition: all 0.3s ease;
    padding: 4px 12px;
    background: #ffffff;
    border-radius: 20px;
    border: 1px solid #003366;
}

.info-link:hover {
    background: #003366;
    color: #ffffff;
    transform: translateX(3px);
}

.info-link i {
    font-size: 0.8em;
    transition: all 0.3s ease;
}

.info-link:hover i {
    transform: translateX(5px);
}

/* ===== RESPONSIVE ===== */
@media(max-width: 768px) {
    .modal-info-banner {
        padding: 10px 15px;
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
    
    .modal-info-banner span {
        font-size: 0.8em;
    }
    
    .info-link {
        font-size: 0.75em;
        padding: 3px 10px;
    }
}

@media(max-width: 480px) {
    .modal-info-banner {
        padding: 8px 12px;
    }
    
    .modal-info-banner i {
        font-size: 1em;
    }
    
    .modal-info-banner span {
        font-size: 0.7em;
    }
    
    .info-link {
        font-size: 0.7em;
        padding: 2px 8px;
    }
}


/*=====//// membership page =========================*/


/*=====news and event page =========================*/

/* ===== PAGE HEADER ===== */
.page-header {
    text-align: center;
    margin-bottom: 30px;
}

.header-subtitle {
    color: #666;
    font-size: 1em;
    margin-top: -8px;
}

/* ===== NOTICE BOARD ===== */
.notice-board {
    display: flex;
    align-items: center;
    background: linear-gradient(135deg, #003366, #1a4a7a);
    padding: 12px 20px;
    border-radius: 10px;
    margin-bottom: 40px;
    border-left: 5px solid #fbb72c;
}

.notice-icon {
    color: #fbb72c;
    font-size: 1.5em;
    margin-right: 15px;
    flex-shrink: 0;
}

.notice-content {
    flex: 1;
    overflow: hidden;
    color: #ffffff;
}

.notice-content marquee {
    color: #ffffff;
    font-size: 0.9em;
}

.notice-item {
    margin: 0 10px;
}

.notice-badge {
    display: inline-block;
    background: #fbb72c;
    color: #003366;
    padding: 1px 10px;
    border-radius: 12px;
    font-size: 0.65em;
    font-weight: 700;
    text-transform: uppercase;
    margin-right: 8px;
}

.notice-separator {
    color: rgba(255, 255, 255, 0.3);
    margin: 0 5px;
}

/* ===== SECTION HEADER ===== */
.section-header {
    display: flex;
    align-items: center;
    margin: 35px 0 20px;
}

.section-header h4 {
    font-size: 1.3em;
    font-weight: 700;
    color: #003366;
    margin: 0;
    white-space: nowrap;
}

.section-header h4 i {
    color: #fbb72c;
    margin-right: 10px;
}

.section-line {
    flex: 1;
    height: 2px;
    background: linear-gradient(to right, #fbb72c, transparent);
    margin-left: 15px;
}

/* ===== EVENT CARDS ===== */
.events-grid {
    margin-bottom: 20px;
}

.event-card {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.4s ease;
    margin-bottom: 25px;
    border: 1px solid rgba(0, 0, 0, 0.04);
    height: 100%;
}

.event-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 10px 40px rgba(0, 51, 102, 0.15);
    border-color: #fbb72c;
}

.event-image {
    position: relative;
    height: 200px;
    overflow: hidden;
    background: #f0f2f5;
}

.event-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.4s ease;
}

.event-card:hover .event-image img {
    transform: scale(1.05);
}

.event-badge {
    position: absolute;
    top: 12px;
    right: 12px;
}

.badge-status {
    display: inline-block;
    background: #fbb72c;
    color: #003366;
    padding: 3px 14px;
    border-radius: 20px;
    font-size: 0.65em;
    font-weight: 700;
    text-transform: uppercase;
}

.event-countdown {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 51, 102, 0.85);
    padding: 10px;
    display: flex;
    justify-content: center;
    gap: 12px;
}

.event-countdown .countdown-item {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.countdown-number {
    font-size: 1.1em;
    font-weight: 700;
    color: #fbb72c;
    line-height: 1.2;
}

.countdown-label {
    font-size: 0.5em;
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.event-started {
    color: #4caf50;
    font-weight: 700;
    font-size: 0.9em;
}

.event-info {
    padding: 18px 20px 20px;
}

.event-meta {
    display: flex;
    gap: 15px;
    margin-bottom: 8px;
    flex-wrap: wrap;
}

.event-meta span {
    font-size: 0.75em;
    color: #888;
}

.event-meta span i {
    color: #fbb72c;
    margin-right: 4px;
}

.event-info h5 {
    font-size: 1em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 8px 0;
    line-height: 1.3;
}

.event-info p {
    font-size: 0.85em;
    color: #666;
    line-height: 1.5;
    margin: 0 0 15px 0;
}

.event-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.read-more-link {
    color: #003366;
    font-weight: 600;
    font-size: 0.8em;
    text-decoration: none;
    transition: all 0.3s ease;
}

.read-more-link i {
    transition: all 0.3s ease;
}

.read-more-link:hover {
    color: #fbb72c;
}

.read-more-link:hover i {
    transform: translateX(5px);
}
.ab_button
.register-link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #fbb72c;
    color: #003366;
    padding: 5px 15px;
    border-radius: 20px;
    font-size: 0.7em;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
}

.register-link:hover {
    background: #003366;
    color: #ffffff;
    transform: scale(1.05);
}

/* ===== PAST EVENTS ===== */
.past-events-grid {
    margin-bottom: 20px;
}

.past-event-card {
    background: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
    margin-bottom: 20px;
    border: 1px solid rgba(0, 0, 0, 0.04);
}

.past-event-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1);
}

.past-event-image {
    position: relative;
    height: 150px;
    overflow: hidden;
    background: #f0f2f5;
}

.past-event-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.past-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    background: #888;
    color: #fff;
    padding: 2px 12px;
    border-radius: 12px;
    font-size: 0.6em;
    font-weight: 600;
    text-transform: uppercase;
}

.past-event-info {
    padding: 12px 15px 15px;
}

.past-date {
    font-size: 0.7em;
    color: #888;
    display: block;
    margin-bottom: 4px;
}

.past-date i {
    color: #fbb72c;
    margin-right: 4px;
}

.past-event-info h6 {
    font-size: 0.85em;
    font-weight: 600;
    color: #003366;
    margin: 0 0 8px 0;
}

/* ===== TESTIMONIALS ===== */
.testimonials-wrapper {
    background: #f8f9fa;
    border-radius: 12px;
    padding: 30px 20px;
    margin-top: 10px;
    position: relative;
}

.testimonial-item {
    display: flex;
    gap: 30px;
    align-items: flex-start;
    padding: 10px 20px;
}

.testimonial-avatar {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    border: 3px solid #fbb72c;
}

.testimonial-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonial-content {
    flex: 1;
    position: relative;
}

.testimonial-content .fa-quote-left {
    font-size: 2em;
    color: #fbb72c;
    opacity: 0.3;
    position: absolute;
    top: -10px;
    left: -15px;
}

.testimonial-content p {
    font-size: 0.95em;
    color: #fff;
    line-height: 1.7;
    margin: 0 0 12px 0;
    padding-left: 20px;
}

.testimonial-author h5 {
    font-size: 1em;
    font-weight: 700;
    color: #fff;
    margin: 0;
}

.testimonial-author span {
    font-size: 0.8em;
    color: #fff;
}

.testimonial-rating {
    margin-top: 4px;
}

.testimonial-rating i {
    color: #fbb72c;
    font-size: 0.8em;
}

/* Testimonial Indicators */
.testimonial-indicators {
    text-align: center;
    margin: 15px 0 0;
    padding: 0;
    list-style: none;
}

.testimonial-indicators li {
    display: inline-block;
    width: 12px;
    height: 12px;
    background: #ddd;
    border-radius: 50%;
    margin: 0 5px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.testimonial-indicators li.active {
    background: #fbb72c;
}

/* Testimonial Controls */
.testimonial-control {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    background: #ffffff;
    border-radius: 50%;
    text-align: center;
    line-height: 40px;
    color: #003366;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    z-index: 10;
}

.testimonial-control:hover {
    background: #fbb72c;
    color: #003366;
}

.testimonial-control.left {
    left: -15px;
}

.testimonial-control.right {
    right: -15px;
}

/* ===== RESPONSIVE ===== */
@media(max-width: 991px) {
    .event-image {
        height: 180px;
    }
    
    .testimonial-item {
        flex-direction: column;
        align-items: center;
        text-align: center;
        padding: 10px 0;
    }
    
    .testimonial-content .fa-quote-left {
        left: 50%;
        transform: translateX(-50%);
        top: -5px;
    }
    
    .testimonial-content p {
        padding-left: 0;
    }
    
    .testimonial-control.left {
        left: 5px;
    }
    
    .testimonial-control.right {
        right: 5px;
    }
}


@media(max-width: 768px) {
    .notice-board {
        flex-direction: column;
        align-items: flex-start;
        padding: 10px 15px;
    }
    
    .notice-icon {
        margin-right: 0;
        margin-bottom: 5px;
        font-size: 1.2em;
    }
    
    .notice-content marquee {
        font-size: 0.75em;
    }
    
    .event-image {
        height: 160px;
    }
    
    .event-countdown {
        padding: 6px;
        gap: 8px;
    }
    
    .countdown-number {
        font-size: 0.9em;
    }
    
    .event-actions {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
    }
    
    .register-link {
        text-align: center;
        justify-content: center;
    }
    
    .past-event-card {
        max-width: 280px;
        margin: 0 auto 20px;
    }
    
    .testimonials-wrapper {
        padding: 20px 10px;
    }
    
    .testimonial-avatar {
        width: 60px;
        height: 60px;
    }
}

@media(max-width: 480px) {
    .event-image {
        height: 140px;
    }
    
    .event-countdown .countdown-item {
        min-width: 30px;
    }
    
    .countdown-number {
        font-size: 0.75em;
    }
    
    .countdown-label {
        font-size: 0.4em;
    }
    
    .event-info h5 {
        font-size: 0.9em;
    }
    
    .section-header h4 {
        font-size: 1em;
    }
}
/*=====//// news and event page =========================*/


/*=====//// news and event detail page =========================*/

/* ===== BREADCRUMB ===== */
.breadcrumb-wrapper {
    padding: 12px 0;
    margin-bottom: 25px;
    border-bottom: 1px solid #eee;
    font-size: 0.85em;
}

.breadcrumb-wrapper a {
    color: #003366;
    text-decoration: none;
    transition: all 0.3s ease;
}

.breadcrumb-wrapper a:hover {
    color: #fbb72c;
}

.breadcrumb-separator {
    color: #ccc;
    margin: 0 8px;
}

.breadcrumb-current {
    color: #888;
    font-weight: 500;
}

/* ===== EVENT DETAIL ===== */
.event-detail-wrapper {
    background: #ffffff;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.06);
}

.event-detail-header {
    margin-bottom: 20px;
}

.event-category {
    display: inline-block;
    background: #e8f0fe;
    color: #1a73e8;
    padding: 3px 15px;
    border-radius: 20px;
    font-size: 0.75em;
    font-weight: 600;
    margin-bottom: 10px;
}

.event-detail-title {
    font-size: 1.8em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 12px 0;
    line-height: 1.3;
}

.event-detail-meta {
    display: flex;
    gap: 25px;
    flex-wrap: wrap;
}

.event-detail-meta span {
    font-size: 0.85em;
    color: #666;
}

.event-detail-meta span i {
    color: #fbb72c;
    margin-right: 6px;
    width: 16px;
}

.event-detail-image {
    border-radius: 10px;
    overflow: hidden;
    margin: 20px 0;
}

.event-detail-image img {
    width: 100%;
    height: 350px;
    object-fit: cover;
}

.event-detail-content {
    margin-bottom: 25px;
}

.event-detail-content h4 {
    font-size: 1.2em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 12px 0;
}

.event-detail-content h4 i {
    color: #fbb72c;
    margin-right: 10px;
}

.event-detail-content p {
    font-size: 0.95em;
    color: #555;
    line-height: 1.8;
}

.event-program-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.event-program-list li {
    padding: 8px 0;
    border-bottom: 1px solid #f5f5f5;
    font-size: 0.9em;
    color: #555;
}

.event-program-list li:last-child {
    border-bottom: none;
}

.event-program-list li i {
    color: #4caf50;
    margin-right: 10px;
}

/* ===== REGISTER SECTION ===== */
.event-register-section {
    margin-top: 20px;
}

.register-box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(135deg, #003366, #1a4a7a);
    padding: 20px 25px;
    border-radius: 12px;
    border-left: 5px solid #fbb72c;
    gap: 20px;
}

.register-info {
    display: flex;
    align-items: center;
    gap: 15px;
}

.register-info i {
    font-size: 2em;
    color: #fbb72c;
}

.register-info h5 {
    color: #ffffff;
    font-size: 1em;
    font-weight: 700;
    margin: 0;
}

.register-info p {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.85em;
    margin: 0;
}

.register-now-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #fbb72c;
    color: #003366;
    padding: 12px 30px;
    border-radius: 30px;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.register-now-btn:hover {
    background: #ffffff;
    color: #003366;
    transform: scale(1.05);
    box-shadow: 0 5px 25px rgba(251, 183, 44, 0.4);
}

/* ===== SIDEBAR ===== */
.event-sidebar {
    margin-left: 10px;
}

.sidebar-widget {
    background: #ffffff;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.06);
    margin-bottom: 25px;
}

.sidebar-widget h4 {
    font-size: 1.1em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 15px 0;
    padding-bottom: 10px;
    border-bottom: 2px solid #f5f5f5;
}

.sidebar-widget h4 i {
    color: #fbb72c;
    margin-right: 8px;
}

/* Upcoming Events List */
.upcoming-events-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.upcoming-events-list li {
    margin-bottom: 12px;
}

.upcoming-events-list li a {
    display: block;
    padding: 12px;
    background: #f8f9fa;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.upcoming-events-list li a:hover {
    background: #fff8e6;
    transform: translateX(5px);
    border-left: 3px solid #fbb72c;
}

.upcoming-events-list .event-date {
    display: inline-block;
    font-size: 0.65em;
    font-weight: 700;
    color: #ffffff;
    background: #003366;
    padding: 1px 10px;
    border-radius: 12px;
    margin-bottom: 4px;
}

.upcoming-events-list .event-title {
    display: block;
    font-size: 0.85em;
    font-weight: 600;
    color: #003366;
    margin-bottom: 2px;
}

.upcoming-events-list .event-location {
    font-size: 0.7em;
    color: #888;
}

.upcoming-events-list .event-location i {
    color: #fbb72c;
    margin-right: 4px;
}

.view-all-events {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #fbb72c !important;
    font-weight: 600;
    font-size: 0.85em;
    background: transparent !important;
    padding: 8px 0 !important;
}

.view-all-events:hover {
    background: transparent !important;
    transform: translateX(5px) !important;
    border-left: none !important;
}

.view-all-events i {
    transition: all 0.3s ease;
}

.view-all-events:hover i {
    transform: translateX(5px);
}

/* Quick Details */
.quick-details-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.quick-details-list li {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid #f5f5f5;
}

.quick-details-list li:last-child {
    border-bottom: none;
}

.detail-label {
    font-size: 0.85em;
    color: #888;
}

.detail-label i {
    color: #fbb72c;
    margin-right: 5px;
    width: 16px;
}

.detail-value {
    font-size: 0.85em;
    font-weight: 600;
    color: #003366;
}

/* Share Links */
.share-links {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.share-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    color: #ffffff;
    transition: all 0.3s ease;
    text-decoration: none;
}

.share-link:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}

.share-link.facebook {
    background: #1877f2;
}

.share-link.twitter {
    background: #1da1f2;
}

.share-link.linkedin {
    background: #0a66c2;
}

.share-link.whatsapp {
    background: #25d366;
}

.share-link.email {
    background: #ea4335;
}

/* ===== RESPONSIVE ===== */
@media(max-width: 991px) {
    .event-detail-wrapper {
        padding: 20px;
    }
    
    .event-detail-title {
        font-size: 1.4em;
    }
    
    .event-detail-image img {
        height: 250px;
    }
    
    .event-sidebar {
        margin-left: 0;
        margin-top: 20px;
    }
    
    .register-box {
        flex-direction: column;
        text-align: center;
    }
    
    .register-info {
        flex-direction: column;
        text-align: center;
    }
}

@media(max-width: 768px) {
    .event-detail-title {
        font-size: 1.2em;
    }
    
    .event-detail-meta {
        gap: 12px;
        flex-direction: column;
    }
    
    .event-detail-meta span {
        font-size: 0.8em;
    }
    
    .event-detail-image img {
        height: 200px;
    }
    
    .event-detail-content p {
        font-size: 0.85em;
    }
    
    .register-box {
        padding: 15px 20px;
    }
    
    .register-info i {
        font-size: 1.5em;
    }
    
    .register-now-btn {
        padding: 10px 20px;
        font-size: 0.85em;
    }
    
    .sidebar-widget {
        padding: 15px;
    }
}

@media(max-width: 480px) {
    .event-detail-wrapper {
        padding: 15px;
    }
    
    .event-detail-title {
        font-size: 1em;
    }
    
    .event-detail-image img {
        height: 150px;
    }
    
    .event-category {
        font-size: 0.65em;
    }
    
    .quick-details-list li {
        flex-direction: column;
        gap: 2px;
    }
}
/*=====//// news and event page =========================*/


/*==== event registration modal =================*/
/* ===== REGISTRATION MODAL ===== */
#registerModal .modal-content {
    border-radius: 16px;
    border: none;
    overflow: hidden;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
}

#registerModal .modal-header {
    background: linear-gradient(135deg, #003366, #1a4a7a);
    color: #ffffff;
    padding: 25px 30px;
    border-bottom: 3px solid #fbb72c;
    position: relative;
}

#registerModal .modal-header .close {
    color: #ffffff;
    opacity: 0.7;
    font-size: 1.8em;
    transition: all 0.3s ease;
}

#registerModal .modal-header .close:hover {
    opacity: 1;
    transform: rotate(90deg);
}

#registerModal .modal-icon {
    display: inline-block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    background: #fbb72c;
    color: #003366;
    border-radius: 50%;
    text-align: center;
    font-size: 1.5em;
    margin-right: 12px;
    float: left;
}

#registerModal .modal-title {
    font-size: 1.2em;
    font-weight: 700;
    line-height: 50px;
}

#registerModal .modal-badge {
    display: inline-block;
    background: rgba(255, 255, 255, 0.15);
    color: #ffffff;
    padding: 4px 16px;
    border-radius: 20px;
    font-size: 0.75em;
    font-weight: 600;
    margin-left: 10px;
    vertical-align: middle;
}

#registerModal .modal-badge i {
    color: #fbb72c;
    margin-right: 5px;
}

#registerModal .modal-body {
    padding: 30px;
    max-height: 500px;
    overflow-y: auto;
}

/* Registration Steps */
.registration-steps {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 30px;
    padding: 10px 0;
}

.step {
    display: flex;
    align-items: center;
    gap: 8px;
}

.step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    background: #e8eaed;
    color: #888;
    border-radius: 50%;
    font-size: 0.75em;
    font-weight: 700;
    transition: all 0.3s ease;
}

.step.active .step-number {
    background: #fbb72c;
    color: #003366;
}

.step-label {
    font-size: 0.75em;
    color: #888;
    font-weight: 500;
}

.step.active .step-label {
    color: #003366;
    font-weight: 700;
}

.step-line {
    width: 40px;
    height: 2px;
    background: #ddd;
    margin: 0 10px;
}

/* Form Sections */
.form-section {
    margin-bottom: 25px;
    padding-bottom: 20px;
    border-bottom: 1px solid #f0f0f0;
}

.form-section:last-child {
    border-bottom: none;
    margin-bottom: 0;
}

.form-section h5 {
    font-size: 1em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 15px 0;
}

.form-section h5 i {
    color: #fbb72c;
    margin-right: 8px;
}

/* Form Fields */
#registerModal .form-group {
    margin-bottom: 15px;
}

#registerModal .form-group label {
    font-weight: 600;
    color: #333;
    font-size: 0.85em;
    display: block;
    margin-bottom: 4px;
}

#registerModal .form-group .required {
    color: #d93025;
    font-weight: 700;
}

#registerModal .form-control {
    border-radius: 8px;
    border: 1px solid #ddd;
    padding: 10px 15px;
    font-size: 0.9em;
    transition: all 0.3s ease;
    width: 100%;
}

#registerModal .form-control:focus {
    border-color: #fbb72c;
    box-shadow: 0 0 0 3px rgba(251, 183, 44, 0.15);
}

#registerModal textarea.form-control {
    resize: vertical;
    min-height: 60px;
}

/* Terms Section */
.terms-section {
    background: #f8f9fa;
    padding: 15px 20px;
    border-radius: 8px;
    border: 1px solid #eee;
}

.terms-section .checkbox {
    margin-bottom: 8px;
}

.terms-section .checkbox:last-child {
    margin-bottom: 0;
}

.terms-section .checkbox label {
    font-size: 0.85em;
    color: #555;
    font-weight: 400;
}

.terms-section .checkbox label a {
    color: #003366;
    font-weight: 600;
    text-decoration: none;
}

.terms-section .checkbox label a:hover {
    color: #fbb72c;
}

/* Modal Footer */
#registerModal .modal-footer {
    padding: 20px 30px;
    background: #f8f9fa;
    border-top: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.registration-summary {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.summary-label {
    font-size: 0.85em;
    color: #888;
}

.summary-amount {
    display: flex;
    align-items: baseline;
    gap: 5px;
}

.amount {
    font-size: 1.3em;
    font-weight: 700;
    color: #003366;
}

.summary-amount small {
    font-size: 0.7em;
    color: #888;
}

.registration-actions {
    display: flex;
    gap: 10px;
    align-items: center;
}

.register-submit-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 30px;
    background: #fbb72c;
    color: #003366;
    border: none;
    border-radius: 30px;
    font-weight: 700;
    font-size: 0.85em;
    transition: all 0.3s ease;
    cursor: pointer;
}

.register-submit-btn:hover {
    background: #003366;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 5px 20px rgba(0, 51, 102, 0.3);
}

.close-modal-btn {
    padding: 10px 25px;
    background: transparent;
    color: #666;
    border: 2px solid #ddd;
    border-radius: 30px;
    font-weight: 600;
    font-size: 0.85em;
    transition: all 0.3s ease;
    cursor: pointer;
}

.close-modal-btn:hover {
    background: #f0f0f0;
    border-color: #999;
}

/* Terms Modal */
.terms-body {
    padding: 25px;
}

.terms-body h5 {
    font-size: 1em;
    font-weight: 700;
    color: #003366;
    margin: 15px 0 5px;
}

.terms-body h5:first-child {
    margin-top: 0;
}

.terms-body p {
    font-size: 0.9em;
    color: #555;
    line-height: 1.6;
}

/* ===== RESPONSIVE ===== */
@media(max-width: 768px) {
    #registerModal .modal-header {
        padding: 20px;
    }
    
    #registerModal .modal-title {
        font-size: 1em;
        line-height: 40px;
    }
    
    #registerModal .modal-icon {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 1.2em;
        margin-right: 8px;
    }
    
    #registerModal .modal-badge {
        font-size: 0.65em;
        margin-left: 5px;
    }
    
    #registerModal .modal-body {
        padding: 20px;
        max-height: 400px;
    }
    
    .registration-steps {
        flex-wrap: wrap;
        gap: 5px;
    }
    
    .step-line {
        width: 20px;
    }
    
    .step-label {
        font-size: 0.65em;
    }
    
    .step-number {
        width: 25px;
        height: 25px;
        font-size: 0.65em;
    }
    
    #registerModal .modal-footer {
        flex-direction: column;
        align-items: stretch;
        padding: 15px 20px;
    }
    
    .registration-summary {
        justify-content: center;
    }
    
    .registration-actions {
        flex-direction: column;
        width: 100%;
    }
    
    .register-submit-btn,
    .close-modal-btn {
        width: 100%;
        justify-content: center;
    }
}

@media(max-width: 480px) {
    #registerModal .modal-header {
        padding: 15px;
    }
    
    #registerModal .modal-title {
        font-size: 0.85em;
    }
    
    #registerModal .modal-icon {
        width: 35px;
        height: 35px;
        line-height: 35px;
        font-size: 1em;
    }
    
    #registerModal .modal-badge {
        font-size: 0.55em;
        padding: 2px 10px;
    }
    
    #registerModal .modal-body {
        padding: 15px;
        max-height: 350px;
    }
    
    .step-label {
        display: none;
    }
    
    .step-line {
        width: 15px;
    }
    
    .registration-summary {
        flex-direction: column;
        align-items: center;
    }
    
    .amount {
        font-size: 1.1em;
    }
}


/* ===== STEP INDICATOR ===== */
.step-indicator {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 30px;
    background: #f8f9fa;
    border-bottom: 1px solid #eee;
}

.step-item {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    opacity: 0.5;
    transition: all 0.3s ease;
}

.step-item.active {
    opacity: 1;
}

.step-item.completed {
    opacity: 0.7;
}

.step-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: #ddd;
    color: #888;
    border-radius: 50%;
    font-size: 0.75em;
    font-weight: 700;
    transition: all 0.3s ease;
}

.step-item.active .step-circle {
    background: #fbb72c;
    color: #003366;
    box-shadow: 0 0 0 4px rgba(251, 183, 44, 0.2);
}

.step-item.completed .step-circle {
    background: #4caf50;
    color: #ffffff;
}

.step-label {
    font-size: 0.7em;
    font-weight: 500;
    color: #888;
    white-space: nowrap;
}

.step-item.active .step-label {
    color: #003366;
    font-weight: 700;
}

.step-line {
    width: 40px;
    height: 2px;
    background: #ddd;
    margin: 0 8px;
}

/* ===== FORM STEPS ===== */
.form-step {
    animation: fadeInStep 0.4s ease;
}

@keyframes fadeInStep {
    from {
        opacity: 0;
        transform: translateX(20px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.step-description {
    font-size: 0.85em;
    color: #888;
    margin-bottom: 20px;
}

/* ===== PAYMENT SECTION ===== */
.payment-summary {
    background: #f8f9fa;
    border-radius: 10px;
    padding: 20px;
}

.payment-details {
    margin-bottom: 20px;
}

.payment-row {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
}

.payment-row:last-child {
    border-bottom: none;
}

.payment-label {
    font-size: 0.85em;
    color: #888;
}

.payment-value {
    font-size: 0.85em;
    font-weight: 600;
    color: #003366;
    text-align: right;
}

.total-row {
    border-top: 2px solid #003366;
    padding-top: 12px;
    margin-top: 8px;
}

.total-row .payment-label {
    font-weight: 700;
    color: #003366;
}

.total-row .payment-value {
    font-size: 1.1em;
    color: #fbb72c;
}

.mpesa-payment {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 2px dashed #ddd;
}

.mpesa-info {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 15px;
}

.mpesa-logo {
    height: 30px;
    width: auto;
}

.mpesa-info p {
    font-size: 0.85em;
    color: #555;
    margin: 0;
}

.input-group-addon {
    background: #f0f2f5;
    border: 1px solid #ddd;
    border-right: none;
    padding: 8px 12px;
    border-radius: 8px 0 0 8px;
    font-size: 0.85em;
    color: #555;
}

.input-group .form-control {
    border-radius: 0 8px 8px 0;
    border-left: none;
}

.mpesa-pay-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 30px;
    background: #4caf50;
    color: #ffffff;
    border: none;
    border-radius: 30px;
    font-weight: 700;
    font-size: 0.9em;
    transition: all 0.3s ease;
    cursor: pointer;
    margin-top: 10px;
}

.mpesa-pay-btn:hover {
    background: #388e3c;
    transform: scale(1.03);
    box-shadow: 0 5px 20px rgba(76, 175, 80, 0.3);
}

.mpesa-pay-btn:disabled {
    background: #ccc;
    cursor: not-allowed;
    transform: none;
}

/* Payment Status */
.payment-status {
    margin-top: 15px;
    padding: 12px 15px;
    border-radius: 8px;
}

.payment-loading {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #1a73e8;
}

.payment-loading i {
    font-size: 1.2em;
}

.payment-success {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #4caf50;
}

.payment-success i {
    font-size: 1.2em;
}

.payment-error {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #d93025;
}

.payment-error i {
    font-size: 1.2em;
}

/* ===== CONFIRMATION ===== */
.confirmation-content {
    text-align: center;
    padding: 20px 0;
}

.confirmation-icon {
    font-size: 4em;
    color: #4caf50;
    margin-bottom: 15px;
}

.confirmation-content h4 {
    font-size: 1.5em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 8px 0;
}

.confirmation-content > p {
    font-size: 0.95em;
    color: #666;
    margin-bottom: 25px;
}

.confirmation-details {
    background: #f8f9fa;
    border-radius: 10px;
    padding: 20px;
    text-align: left;
    margin-bottom: 20px;
}

.confirmation-row {
    display: flex;
    justify-content: space-between;
    padding: 6px 0;
    border-bottom: 1px solid #eee;
}

.confirmation-row:last-child {
    border-bottom: none;
}

.confirmation-label {
    font-size: 0.85em;
    color: #888;
}

.confirmation-value {
    font-size: 0.85em;
    font-weight: 600;
    color: #003366;
}

.confirmation-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: #e8f0fe;
    padding: 12px 15px;
    border-radius: 8px;
}

.confirmation-note i {
    color: #1a73e8;
    font-size: 1.2em;
    margin-top: 2px;
}

.confirmation-note p {
    font-size: 0.85em;
    color: #555;
    margin: 0;
    line-height: 1.5;
}

/* ===== NAVIGATION BUTTONS ===== */
.step-navigation {
    display: flex;
    gap: 12px;
    align-items: center;
    width: 100%;
    justify-content: space-between;
}

.step-navigation .prev-step-btn,
.step-navigation .next-step-btn,
.step-navigation .submit-registration-btn {
    padding: 10px 25px;
    border-radius: 30px;
    font-weight: 700;
    font-size: 0.85em;
    transition: all 0.3s ease;
    cursor: pointer;
    border: none;
}

.prev-step-btn {
    background: #f0f2f5;
    color: #666;
}

.prev-step-btn:hover {
    background: #e0e0e0;
}

.next-step-btn {
    background: #003366;
    color: #ffffff;
}

.next-step-btn:hover {
    background: #1a4a7a;
    transform: translateX(3px);
}

.submit-registration-btn {
    background: #fbb72c;
    color: #003366;
}

.submit-registration-btn:hover {
    background: #e6a520;
    transform: scale(1.03);
    box-shadow: 0 5px 20px rgba(251, 183, 44, 0.3);
}

.submit-registration-btn:disabled {
    background: #ccc;
    color: #888;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

.close-modal-btn {
    padding: 10px 25px;
    background: transparent;
    color: #666;
    border: 2px solid #ddd;
    border-radius: 30px;
    font-weight: 600;
    font-size: 0.85em;
    transition: all 0.3s ease;
    cursor: pointer;
}

.close-modal-btn:hover {
    background: #f0f0f0;
    border-color: #999;
}

/* ===== RESPONSIVE ===== */
@media(max-width: 768px) {
    .step-indicator {
        padding: 15px;
        flex-wrap: wrap;
        gap: 5px;
    }
    
    .step-label {
        display: none;
    }
    
    .step-line {
        width: 20px;
    }
    
    .step-circle {
        width: 28px;
        height: 28px;
        font-size: 0.65em;
    }
    
    .payment-row {
        flex-direction: column;
        gap: 2px;
    }
    
    .payment-value {
        text-align: left;
    }
    
    .step-navigation {
        flex-wrap: wrap;
        justify-content: center;
    }
    
    .step-navigation .prev-step-btn,
    .step-navigation .next-step-btn,
    .step-navigation .submit-registration-btn,
    .close-modal-btn {
        flex: 1;
        min-width: 100px;
        text-align: center;
        font-size: 0.75em;
        padding: 8px 15px;
    }
    
    .mpesa-pay-btn {
        width: 100%;
        justify-content: center;
    }
}

@media(max-width: 480px) {
    .step-indicator {
        padding: 10px;
    }
    
    .step-circle {
        width: 24px;
        height: 24px;
        font-size: 0.55em;
    }
    
    .step-line {
        width: 12px;
    }
    
    .confirmation-details {
        padding: 15px;
    }
    
    .confirmation-row {
        flex-direction: column;
        gap: 2px;
    }
}
/*===========/// event registartion modal-===============*/


/* ===== FLOATING ALERT CONTAINER ===== */
.floating-alert-container {
    position: fixed;
    top: 90px;
    right: 20px;
    z-index: 9999;
    max-width: 450px;
    width: 100%;
    pointer-events: none;
}

.floating-alert-container .floating-alert {
    pointer-events: auto;
    padding: 15px 20px;
    margin-bottom: 12px;
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
    animation: slideInRight 0.5s ease forwards;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    border-left: 5px solid;
    background: #ffffff;
    transition: all 0.3s ease;
}

/* Alert Types */
.floating-alert.alert-success {
    border-left-color: #4caf50;
}
.floating-alert.alert-success .alert-content i {
    color: #4caf50;
}

.floating-alert.alert-error,
.floating-alert.alert-danger {
    border-left-color: #d93025;
}
.floating-alert.alert-error .alert-content i,
.floating-alert.alert-danger .alert-content i {
    color: #d93025;
}

.floating-alert.alert-warning {
    border-left-color: #ff9800;
}
.floating-alert.alert-warning .alert-content i {
    color: #ff9800;
}

.floating-alert.alert-info {
    border-left-color: #1a73e8;
}
.floating-alert.alert-info .alert-content i {
    color: #1a73e8;
}

/* Alert Content */
.alert-content {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1;
}

.alert-content i {
    font-size: 1.3em;
    flex-shrink: 0;
}

.alert-message {
    font-size: 0.95em;
    color: #333;
    line-height: 1.5;
}

/* Close Button */
.alert-close {
    background: transparent;
    border: none;
    font-size: 1.2em;
    color: #999;
    cursor: pointer;
    padding: 0 4px;
    transition: all 0.3s ease;
    flex-shrink: 0;
    margin-top: -2px;
}

.alert-close:hover {
    color: #333;
    transform: rotate(90deg);
}

/* ===== ANIMATIONS ===== */
@keyframes slideInRight {
    0% {
        transform: translateX(100%);
        opacity: 0;
    }
    100% {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes slideOutRight {
    0% {
        transform: translateX(0);
        opacity: 1;
    }
    100% {
        transform: translateX(100%);
        opacity: 0;
    }
}

.floating-alert.hiding {
    animation: slideOutRight 0.4s ease forwards;
}

/* ===== RESPONSIVE ===== */
@media(max-width: 768px) {
    .floating-alert-container {
        top: 75px;
        right: 10px;
        left: 10px;
        max-width: 100%;
        width: auto;
    }
    
    .floating-alert-container .floating-alert {
        padding: 12px 15px;
        font-size: 0.9em;
    }
    
    .alert-content i {
        font-size: 1.1em;
    }
}

@media(max-width: 480px) {
    .floating-alert-container {
        top: 65px;
        right: 8px;
        left: 8px;
    }
    
    .floating-alert-container .floating-alert {
        padding: 10px 12px;
        font-size: 0.85em;
        border-radius: 8px;
    }
}


/*=========== GALLERLY PAGE STYLES================ */

.gallery-page {
    background: #f8f9fa;
    min-height: 100vh;
}

/* ===== HEADER ===== */
.gallery-header {
    text-align: center;
    margin-bottom: 30px;
}

.header-subtitle {
    color: #666;
    font-size: 1em;
    margin-top: -8px;
}

/* ===== FILTERS ===== */
.gallery-filters {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-bottom: 30px;
    flex-wrap: wrap;
}

.filter-btn {
    padding: 8px 22px;
    background: #ffffff;
    border: 2px solid #e8eaed;
    border-radius: 25px;
    font-weight: 600;
    color: #666;
    cursor: pointer;
    transition: all 0.3s ease;
}

.filter-btn:hover {
    border-color: #fbb72c;
    color: #003366;
}

.filter-btn.active {
    background: #fbb72c;
    border-color: #fbb72c;
    color: #003366;
}

/* ===== GALLERY GRID ===== */
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 25px;
    margin-bottom: 30px;
}

.gallery-item {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
}

.gallery-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.gallery-image-wrapper {
    position: relative;
    overflow: hidden;
    cursor: pointer;
    height: 240px;
}

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

.gallery-item:hover .gallery-image-wrapper img {
    transform: scale(1.05);
}

.gallery-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 51, 102, 0.7);
    opacity: 0;
    transition: opacity 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gallery-image-wrapper:hover .gallery-overlay {
    opacity: 1;
}

.gallery-overlay-content {
    color: #ffffff;
    text-align: center;
    transform: scale(0.8);
    transition: transform 0.3s ease;
}

.gallery-image-wrapper:hover .gallery-overlay-content {
    transform: scale(1);
}

.gallery-overlay-content i {
    font-size: 2em;
    display: block;
    margin-bottom: 8px;
}

.gallery-overlay-content span {
    font-weight: 600;
}

.gallery-item-info {
    padding: 15px 20px 20px;
}

.gallery-item-info h5 {
    font-size: 1em;
    font-weight: 700;
    color: #003366;
    margin: 0 0 6px 0;
}

.gallery-item-info p {
    font-size: 0.85em;
    color: #666;
    margin: 0 0 10px 0;
    line-height: 1.5;
}

.gallery-date {
    font-size: 0.75em;
    color: #888;
    margin-right: 12px;
}

.gallery-date i {
    color: #fbb72c;
    margin-right: 4px;
}

.gallery-category {
    display: inline-block;
    padding: 2px 12px;
    background: #f0f4ff;
    color: #1a73e8;
    border-radius: 12px;
    font-size: 0.7em;
    font-weight: 600;
}

/* ===== LOAD MORE ===== */
.load-more-wrapper {
    text-align: center;
    margin-top: 20px;
}

.load-more-btn {
    padding: 12px 40px;
    background: #003366;
    color: #ffffff;
    border: none;
    border-radius: 30px;
    font-weight: 600;
    font-size: 1em;
    cursor: pointer;
    transition: all 0.3s ease;
}

.load-more-btn:hover {
    background: #1a4a7a;
    transform: translateY(-2px);
    box-shadow: 0 5px 20px rgba(0, 51, 102, 0.3);
}

.load-more-btn i {
    margin-right: 8px;
}

/* ===== PHOTO VIEWER MODAL ===== */
.photo-modal .modal-dialog {
    max-width: 90%;
    width: 90%;
    height: 90vh;
}

.photo-modal .modal-content {
    height: 100%;
    border-radius: 12px;
    overflow: hidden;
}

.photo-modal .modal-header {
    background: #003366;
    color: #ffffff;
    padding: 15px 25px;
    border-bottom: 3px solid #fbb72c;
}

.photo-modal .modal-header .close {
    color: #ffffff;
    opacity: 0.7;
    font-size: 1.8em;
}

.photo-modal .modal-header .close:hover {
    opacity: 1;
}

.photo-modal .modal-body {
    padding: 0;
    display: flex;
    flex-direction: column;
    height: calc(100% - 60px);
}

.photo-viewer-container {
    flex: 1;
    position: relative;
    background: #1a1a2e;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    min-height: 400px;
}

.photo-viewer-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
}

.photo-viewer-img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    display: none;
    animation: fadeIn 0.3s ease;
}

.photo-viewer-img.active {
    display: block;
}

@keyframes fadeIn {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
}

/* ===== PHOTO NAVIGATION ===== */
.photo-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    border: none;
    border-radius: 50%;
    color: #ffffff;
    font-size: 1.2em;
    cursor: pointer;
    transition: all 0.3s ease;
    z-index: 10;
}

.photo-nav:hover {
    background: rgba(255, 255, 255, 0.3);
    transform: translateY(-50%) scale(1.1);
}

.prev-photo {
    left: 20px;
}

.next-photo {
    right: 20px;
}

/* ===== PHOTO COUNTER ===== */
.photo-counter {
    position: absolute;
    top: 20px;
    right: 20px;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(10px);
    color: #ffffff;
    padding: 6px 16px;
    border-radius: 20px;
    font-size: 0.85em;
    font-weight: 600;
    z-index: 10;
}

/* ===== THUMBNAIL STRIP ===== */
.thumbnail-strip {
    display: flex;
    gap: 8px;
    padding: 12px 20px;
    background: rgba(0, 0, 0, 0.8);
    overflow-x: auto;
    scroll-behavior: smooth;
    flex-shrink: 0;
}

.thumbnail-strip::-webkit-scrollbar {
    height: 4px;
}

.thumbnail-strip::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0.1);
}

.thumbnail-strip::-webkit-scrollbar-thumb {
    background: #fbb72c;
    border-radius: 2px;
}

.thumbnail-item {
    width: 80px;
    height: 60px;
    border-radius: 6px;
    overflow: hidden;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.thumbnail-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.thumbnail-item:hover {
    border-color: rgba(255, 255, 255, 0.5);
}

.thumbnail-item.active {
    border-color: #fbb72c;
}

/* ===== PHOTO DESCRIPTION ===== */
.photo-description {
    padding: 15px 25px;
    background: #f8f9fa;
    border-top: 1px solid #eee;
    flex-shrink: 0;
}

.photo-description p {
    font-size: 0.95em;
    color: #333;
    margin: 0 0 6px 0;
}

.photo-description .photo-date,
.photo-description .photo-category {
    font-size: 0.8em;
    color: #888;
    margin-right: 15px;
}

.photo-description .photo-date i,
.photo-description .photo-category i {
    color: #fbb72c;
    margin-right: 4px;
}

/* ===== MODAL FOOTER ===== */
.photo-modal .modal-footer {
    padding: 12px 25px;
    display: flex;
    gap: 10px;
    flex-shrink: 0;
}

.btn-close-modal {
    padding: 8px 25px;
    background: #f0f2f5;
    color: #666;
    border: none;
    border-radius: 6px;
    font-weight: 600;
}

.btn-close-modal:hover {
    background: #e0e0e0;
}

.btn-download-photo,
.btn-share-photo {
    padding: 8px 20px;
    border: none;
    border-radius: 6px;
    font-weight: 600;
    color: #ffffff;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-download-photo {
    background: #4caf50;
}

.btn-download-photo:hover {
    background: #388e3c;
}

.btn-share-photo {
    background: #1a73e8;
}

.btn-share-photo:hover {
    background: #0d47a1;
}

/* ===== RESPONSIVE ===== */
@media(max-width: 992px) {
    .photo-modal .modal-dialog {
        max-width: 95%;
        width: 95%;
        height: 95vh;
    }
    
    .gallery-grid {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    }
    
    .thumbnail-item {
        width: 60px;
        height: 45px;
    }
}

@media(max-width: 768px) {
    .gallery-grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
        gap: 15px;
    }
    
    .gallery-image-wrapper {
        height: 180px;
    }
    
    .photo-modal .modal-dialog {
        max-width: 100%;
        width: 100%;
        height: 100vh;
        margin: 0;
    }
    
    .photo-modal .modal-content {
        border-radius: 0;
    }
    
    .photo-nav {
        width: 40px;
        height: 40px;
        font-size: 0.9em;
    }
    
    .prev-photo {
        left: 10px;
    }
    
    .next-photo {
        right: 10px;
    }
    
    .photo-counter {
        top: 10px;
        right: 10px;
        font-size: 0.75em;
        padding: 4px 12px;
    }
    
    .thumbnail-item {
        width: 50px;
        height: 40px;
    }
    
    .gallery-filters {
        gap: 6px;
    }
    
    .filter-btn {
        padding: 6px 14px;
        font-size: 0.8em;
    }
    
    .photo-description {
        padding: 12px 15px;
    }
    
    .photo-description p {
        font-size: 0.85em;
    }
}

@media(max-width: 480px) {
    .gallery-grid {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }
    
    .gallery-image-wrapper {
        height: 140px;
    }
    
    .gallery-item-info {
        padding: 10px 12px 15px;
    }
    
    .gallery-item-info h5 {
        font-size: 0.85em;
    }
    
    .gallery-item-info p {
        font-size: 0.75em;
    }
    
    .photo-modal .modal-header h4 {
        font-size: 1em;
    }
    
    .thumbnail-item {
        width: 40px;
        height: 30px;
    }
    
    .btn-download-photo,
    .btn-share-photo {
        padding: 6px 12px;
        font-size: 0.8em;
    }
}

/*=========== END OF GALLERLY PAGE================*/

/*TOP MARGING FOR MOBILE VIEW*/


@media(max-width: 480px) {

}

/* ---- Small Mobile (≤ 480px) ---- */
@media(max-width: 480px) {
    #home_container{
    margin-top: 10%;
}
}