/* ==========================================================================
   GAWAGI — UREMBO NA ANIMATIONS
   Faili hili HALIBADILISHI mpangilio wa tovuti hata kidogo.
   Linaongeza mwendo laini, vivuli na hover pekee juu ya muundo uliopo.
   Pakia BAADA ya style.css.
   ========================================================================== */

:root {
    --g-blue: #0463FA;
    --g-blue-600: #0450CC;
    --g-ease: cubic-bezier(.4, 0, .2, 1);
}

/* --- Mwendo laini wa jumla ------------------------------------------------ */
a,
.btn,
.service-item,
.team-item,
.testimonial-item,
.navbar-nav .nav-link {
    transition: color .25s var(--g-ease),
                background-color .25s var(--g-ease),
                border-color .25s var(--g-ease),
                box-shadow .3s var(--g-ease),
                transform .3s var(--g-ease);
}

html { scroll-behavior: smooth; }

/* --- Kibadilisha lugha (EN / SW) ------------------------------------------ */
.lang-switch { gap: 6px; font-weight: 700; font-size: .82rem; }
.lang-switch a {
    color: #6c7a92;
    padding: 3px 8px;
    border: 1px solid transparent;
    border-radius: 6px;
    line-height: 1;
}
.lang-switch a:hover { color: var(--g-blue); }
.lang-switch a.active {
    color: #fff;
    background: var(--g-blue);
    border-color: var(--g-blue);
}
.lang-switch span { color: #c9d2e0; }

@media (max-width: 991.98px) {
    .lang-switch { padding: 12px 0 0 !important; }
}

/* --- Navbar --------------------------------------------------------------- */
.navbar.sticky-top { transition: box-shadow .3s var(--g-ease); }
.navbar.sticky-top.shadow-on-scroll { box-shadow: 0 6px 24px rgba(16, 24, 40, .09); }
.navbar-nav .nav-link { position: relative; }
.navbar-nav .nav-link::after {
    content: "";
    position: absolute;
    left: 1rem; right: 1rem; bottom: .55rem;
    height: 2px;
    background: var(--g-blue);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .28s var(--g-ease);
}
.navbar-nav .nav-link:hover::after,
.navbar-nav .nav-link.active::after { transform: scaleX(1); }
.navbar-brand img { transition: transform .35s var(--g-ease); }
.navbar-brand:hover img { transform: scale(1.05); }

/* --- Kadi na huduma ------------------------------------------------------- */
.service-item:hover,
.team-item:hover,
.testimonial-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(4, 99, 250, .13);
}

.service-item img,
.team-item img,
.about img,
.img-fluid.rounded { transition: transform .5s var(--g-ease); }

.service-item:hover img,
.team-item:hover img { transform: scale(1.04); }

/* --- Vitufe --------------------------------------------------------------- */
.btn-primary:hover,
.btn-outline-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(4, 99, 250, .28);
}
.btn-primary:active { transform: translateY(0); }

/* --- Page header ---------------------------------------------------------- */
.page-header { position: relative; overflow: hidden; }
.page-header .breadcrumb-item + .breadcrumb-item::before { color: rgba(255, 255, 255, .55); }

/* --- Back to top ---------------------------------------------------------- */
.back-to-top:hover { transform: translateY(-4px); }

/* --- Kuingia kwa taratibu (fade-up) --------------------------------------- */
.g-reveal {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity .7s var(--g-ease), transform .7s var(--g-ease);
    will-change: opacity, transform;
}
.g-reveal.is-visible { opacity: 1; transform: none; }

/* Heshimu mtumiaji anayezima animations kwenye mfumo wake */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .001ms !important;
        transition-duration: .001ms !important;
        scroll-behavior: auto !important;
    }
    .g-reveal { opacity: 1; transform: none; }
}
