.font-baloo {
    font-family: 'Baloo 2', sans-serif !important;
}

.font-poppins {
    font-family: 'Poppins', sans-serif !important;
}

.font-fraunces {
    font-family: 'Fraunces', serif !important;
    font-style: normal;
}

.btn-gold {
    color: #1f4d3a !important; 
    background-color: #6bb391 !important;
    border-color: #6bb391 !important;
    transition: all 0.2s ease-in-out;
}

.btn-gold:hover {
    color: #ffffff !important;
    background-color: #5aa381 !important;
    border-color: #5aa381 !important;
}

.btn-gold:active, .btn-gold:focus {
    color: #ffffff !important;
    background-color: #4a8f6f !important; 
    border-color: #2c5f47 !important;
    box-shadow: 0 0 0 0.25rem rgba(107, 179, 145, 0.3) !important;
}

.btn-outline-gold {
    color: #6bb391 !important;
    background-color: transparent !important;
    border-color: #6bb391 !important;
    transition: all 0.2s ease-in-out;
}

.btn-outline-gold:hover {
    color: #1f4d3a !important;
    background-color: #6bb391 !important;
    border-color: #6bb391 !important;
}

.btn-outline-gold:active, .btn-outline-gold:focus {
    color: #ffffff !important;
    background-color: #4a8f6f !important;
    border-color: #2c5f47 !important;
}

.bg-beige {
    background-color: #1f4d3a !important;
}

.bg-beige .nav-link {
    color: #ffffff !important;
    transition: color 0.2s ease-in-out;
}

.bg-beige .navbar-nav .nav-link:not(.active):hover {
    color: #6bb391 !important;
}

.bg-beige .navbar-nav .nav-link.active {
    color: #1f4d3a !important;         
    background-color: #6bb391 !important; 
    font-weight: normal !important;      
    border-radius: 6px;                  
    padding-left: 14px !important;       
    padding-right: 14px !important;      
    transition: all 0.2s ease-in-out;
}

.bg-beige .navbar-nav .nav-link.active:hover {
    color: #ffffff !important;
    background-color: #5aa381 !important;
    opacity: 1 !important;
}

.custom-hero {
    background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('bg.jpg');
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-attachment: scroll;
    min-height: 300px; 
    display: flex;
    align-items: center;
    padding-top: 3rem !important; 
    padding-bottom: 3rem !important; 
}

.text-gold { color: #6bb391 !important; }
.bg-gold { background-color: #6bb391 !important; }
.border-gold { border-color: #6bb391 !important; }
.hover-gold { transition: color 0.2s ease-in-out; }
.hover-gold:hover { color: #6bb391 !important; }

.custom-faq-accordion .accordion-item {
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
    overflow: hidden; 
}

.custom-faq-accordion .accordion-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 0.5rem 1rem rgba(107, 179, 145, 0.15) !important;
}

.custom-faq-accordion .accordion-button {
    color: #333333;
    background-color: #ffffff;
    padding: 1.25rem 1.5rem;
    transition: all 0.2s ease-in-out;
}

.custom-faq-accordion .accordion-button:not(.collapsed):hover,
.custom-faq-accordion .accordion-button:hover {
    color: #5aa381;
}

.custom-faq-accordion .accordion-button:not(.collapsed) {
    color: #1f4d3a !important; 
    background-color: #6bb391 !important; 
    box-shadow: none;
}

.custom-faq-accordion .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%231f4d3a'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.503 0 0 1 .708 0L8 10.293l5.646-5.647a.5.503 0 0 1 .708.708l-6 6a.5.503 0 0 1-.708 0l-6-6a.5.503 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.custom-faq-accordion .accordion-button.collapsed::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236bb391'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.503 0 0 1 .708 0L8 10.293l5.646-5.647a.5.503 0 0 1 .708.708l-6 6a.5.503 0 0 1-.708 0l-6-6a.5.503 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.custom-faq-accordion .accordion-button:focus {
    box-shadow: 0 0 0 0.25rem rgba(107, 179, 145, 0.25) !important;
    border-color: #6bb391 !important;
}

.custom-faq-accordion .accordion-body {
    background-color: #fbfbfb;
    padding: 1.5rem;
    border-top: 1px solid rgba(107, 179, 145, 0.1);
}

.carousel-vertical {
                max-width: 550px;
                margin: 0 auto;
            }
            .carousel-vertical .carousel-item img {
                aspect-ratio: 3 / 4;
                object-fit: cover;
                object-position: center;
            }

            .accordion-button:focus {
                box-shadow: none !important;
                border-color: rgba(107, 179, 145, 0.5) !important;
            }

            .accordion-body .row {
                margin-top: 0.75rem;
            }

            .accordion-button:not(.collapsed)::after {
                background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236bb391'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
            }
            
            .accordion-button::after {
                background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
            }