.card-img-overlay h1{
    text-transform: uppercase;
}

.top-paragraph-text{
    font-family: 'Dancing Script', cursive; /* Elegant cursive font */
}

.card{
    position: relative; /* Ensure pseudo-elements are positioned relative to the card */
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
    background-color: inherit;
    border-radius: 0;
    overflow: hidden; /* Ensures no extra space from child elements */
    display: flex; /* Aligns content within cards flexibly */
    flex-direction: column;
}


.card-img-top{
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0;
    object-fit: cover;
}

/*This is the card overlay*/
.card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, 
        rgba(0, 0, 0, 0.6), 
        rgba(20, 20, 20, 0.9)
    );
    z-index: 2; /* Place it above the image but below the text */
    opacity: 0; /* Initially hidden */
    transition: opacity 0.3s ease-in-out;
}

.card:hover::before {
    opacity: 1; /* Show gradient on hover */
}

.card:hover .card-img-overlay {
    color: white; /* Change text color on hover */    
    padding: 2rem;
}


.card:hover{
    transform: scale(1.01); /* Scale up by 5% on hover */
}

.card img{
    opacity: 0;
}

.card:hover img{
    opacity: 1;
}

.card-img-overlay {
    z-index: 3;
    transition: color 0.3s ease-in-out;
    border: 0;
    padding: 1rem;
}

.card-img-overlay .bttn{
    position: absolute;
    bottom: 5%;
    right: 2%;
    background-color: #f4f4f4;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    border: none;
    text-align: center;
    padding: 8px;
    transition: all 0.3s ease; /* Add smooth hover effects */
    /* box-shadow: 5px 10px lightgrey; */
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.2); /* Dramatic shadow for 3D effect */
    font-weight: bold; /* Bold text */
    cursor: pointer;
    font-family: 'Montserrat', sans-serif;
    text-transform: uppercase;
    /* color: black; */
    overflow: hidden; /* Clip pseudo-element to the button's shape */
    /* font-weight: bold; */
    text-decoration: none;
}


.bttn:hover {
    background-color: whitesmoke; /* Slightly darker background on hover */
    transform: scale(1.1); /* Zoom effect */
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.3); /* More prominent shadow */
}

/* MEDIA QUERIES */
/*phones => 600px and down*/
@media(max-width:600px) {
    .card-img-overlay h1{
        font-size: 1.45rem;
        margin-bottom: 1rem;
    }

    /* h2 Dancing Script */
    .top-paragraph-text{
        font-size: 1.65rem;
        font-weight: 700;
    }

    .card-img-overlay{
        padding: 1rem 2rem;
    }

    .card-img-overlay .bttn{
        width: 50px;
        height: 50px;
        font-size: 0.5rem;
    }
}

/*Portrait tablets and large phones => 600px and up*/
@media(min-width:601px) {
    .card-img-overlay h1{
        font-size: 1.45rem;
        margin-bottom: 1rem;
    }

    /* h2 Dancing Script */
    .top-paragraph-text{
        font-size: 1.65rem;
        font-weight: 700;
    }

    .card-img-overlay{
        padding: 1rem 2rem;
    }

    .card-img-overlay .bttn{
        width: 50px;
        height: 50px;
        font-size: 0.5rem;
    }
}

/*Medium devices - landscape tablets => 768px and up*/
@media(min-width:768px) {
    .card-img-overlay h1{
        font-size: 1.65rem;
        margin-bottom: 1.65rem;
    }

    .card-img-overlay .bttn{
        width: 60px;
        height: 60px;
        font-size: 0.6rem;
    }
}

/*Large devices - Laptops and Tablets => 992px and up*/
@media(min-width:992px) {
    .card-img-overlay{
        padding: 1rem 0.5rem 0 1rem;
    }
    .card-img-overlay h1{
        font-size: 1.125rem;
        margin-bottom: 0.5rem;
    }

    .top-paragraph-text{
        font-size: 1.2rem;
    }

    .card-img-overlay p{
        font-size: 0.75rem;
        padding: 0;
    }

    .card-img-overlay .bttn{
        width: 40px;
        height: 40px;
        font-size: 0.4rem;
        bottom: 2%;
    }

    .card:hover .card-img-overlay p{
        line-height: 1.3;
    }

}

/*Extra-Large devices => 1200px and up*/
@media(min-width:1200px) {
    .card-img-overlay{
        padding: 1rem 0.5rem 0 1.5rem;
    }
    .card-img-overlay p{
        font-size: 1rem;
    }
}

@media(min-width:1350px){
    .card-img-overlay{
        padding: 1rem 1.5rem 0 2rem;
    }

    .card-img-overlay h1{
        font-size: 1.5rem;
        margin-bottom: 1rem;
    }

    /* h2 Dancing Script */
    .top-paragraph-text{
        font-size: 1.5rem;
    }

    .card:hover .card-img-overlay{
        padding: 1rem 0.5rem 0 1.5rem;
    }

    .card-img-overlay .bttn{
        width: 60px;
        height: 60px;
        font-size: 0.6rem;
        bottom: 2%;
    }
}

@media(min-width:1600px){
    .card-img-overlay h1{
        font-size: 2rem;
        margin-bottom: 1rem;
    }

    /* h2 Dancing Script */
    .top-paragraph-text{
        font-size: 2rem;
    }

    .card-img-overlay p{
        font-size: 1.25rem;
        line-height: 1.5;
    }
}



