:root {
    --brand-green: #1B5E20;
    --brand-green-dark: #0d3810;
    --brand-gold: #FBC02D;
    --brand-dark: #121212;
    --text-dark: #212121;
    --text-muted: #555555;
    --bg-light: #F8F9FA;
}

body {
    font-family: 'Plus Jakarta Sans', sans-serif;
    color: var(--text-dark);
    background-color: #ffffff;
    overflow-x: hidden;
}

/* Page Headers */
.page-header {
    background: linear-gradient(135deg, var(--brand-green-dark) 0%, var(--brand-green) 100%) !important;
    color: #ffffff !important;
    padding: 70px 0;
}

.page-header h1, .page-header p {
    color: #ffffff !important;
}

/* Custom Cards */
.custom-card {
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    background-color: #ffffff;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.custom-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.1);
}

.custom-card-img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    border-bottom: 4px solid var(--brand-gold);
}

.team-card-img {
    height: 280px;
    object-fit: cover;
    object-position: top;
}

.service-card-img {
    height: 200px;
    object-fit: cover;
}

/* Partner Logo Grid */
.logo-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 30px;
}

.logo-grid img {
    max-width: 150px;
    max-height: 75px;
    object-fit: contain;
    filter: grayscale(100%);
    opacity: 0.7;
    transition: all 0.3s ease;
}

.logo-grid img:hover {
    filter: grayscale(0%);
    opacity: 1;
    transform: scale(1.05);
}

/* Contact Cards */
.contact-info-card {
    background-color: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    color: #212121 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
}

/* Buttons */
.btn-brand-gold {
    background-color: var(--brand-gold) !important;
    color: #121212 !important;
    font-weight: 700 !important;
    border: none !important;
}

.btn-brand-gold:hover {
    background-color: #f9a825 !important;
    color: #000000 !important;
}

.btn-brand-green {
    background-color: var(--brand-green) !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    border: none !important;
}

.btn-brand-green:hover {
    background-color: var(--brand-green-dark) !important;
    color: #ffffff !important;
}

/* Utility Helpers */
.fs-7 {
    font-size: 0.85rem;
}

.max-w-800 {
    max-width: 800px;
}