/* ======================================================================
   BRAND & UTILITIES
====================================================================== */
:root {
    --bs-brand: #006442;
    --bs-brand-light: #e6f0ed;
    --quick-bg: #e8f6ff; /* soft light blue */
}

.text-brand {
    color: var(--bs-brand) !important;
}

.bg-brand-light {
    background-color: var(--bs-brand-light) !important;
}

.btn-brand {
    background-color: var(--bs-brand);
    color: #fff;
    border-color: var(--bs-brand);
}
.btn-brand:hover {
    background-color: #004a31;
    border-color: #004a31;
    color: #fff;
}

.bg-light-subtle {
    background-color: #fcfdfd !important;
}

.brand-gradient {
    background: linear-gradient(90deg, #006442, #004a31) !important;
}

.text-muted {
    color: #000 !important;
}



/* ======================================================================
   HERO SECTION
====================================================================== */
.custom-carousel .carousel-inner img.hero-img {
    height: 60vh;
    object-fit: cover;
    filter: none !important;
}

.hero-caption {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 10 !important;
    transform: translate(-50%, -50%);
}

.custom-carousel .effect-1 { animation: fadeScale 1.4s ease-in-out; }
.custom-carousel .effect-2 { animation: swipeLeft 1.4s ease-in-out; }
.custom-carousel .effect-3 { animation: swipeRight 1.4s ease-in-out; }
.custom-carousel .effect-4 { animation: zoomIn 1.4s ease-in-out; }
.custom-carousel .effect-5 { animation: slideUp 1.4s ease-in-out; }
.custom-carousel .effect-6 { animation: slideDown 1.4s ease-in-out; }

@keyframes fadeScale { from { opacity:0; transform:scale(1.1);} to {opacity:1; transform:scale(1);} }
@keyframes swipeLeft { from {opacity:0; transform:translateX(80px);} to {opacity:1; transform:translateX(0);} }
@keyframes swipeRight { from {opacity:0; transform:translateX(-80px);} to {opacity:1; transform:translateX(0);} }
@keyframes zoomIn { from {opacity:0; transform:scale(1.2);} to {opacity:1; transform:scale(1);} }
@keyframes slideUp { from {opacity:0; transform:translateY(80px);} to {opacity:1; transform:translateY(0);} }
@keyframes slideDown { from {opacity:0; transform:translateY(-80px);} to {opacity:1; transform:translateY(0);} }

/* ======================================================================
   QUICK ACTIONS BAR
====================================================================== */
.quick-actions-section {
    background: var(--quick-bg);
    margin-top: -40px;
    padding-top: 60px;
}

/* ======================================================================
   CARD HOVER EFFECT
====================================================================== */
.card-hover {
    transition: all 0.28s ease;
}
.card-hover:hover {
    transform: translateY(-8px);
    box-shadow: 0 1rem 2.5rem rgba(0,0,0,0.12) !important;
}

.card .card-img-top {
    height: 200px;
    object-fit: cover;
}

.icon-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
}

/* ======================================================================
   FINAL CTA BACKGROUND OVERLAY
====================================================================== */
.cta-section {
    position: relative;
    background-size: cover !important;
    background-position: center !important;
    background-attachment: fixed !important;
}
.cta-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 40, 30, 0.65);
}
.cta-section .container {
    position: relative;
    z-index: 3;
}
