/* General Styles */
body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: #f8f9fa;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* Navbar Polish */
.navbar {
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.navbar-brand {
    font-weight: 700;
    letter-spacing: 1px;
}

/* Logo Styling */
.navbar-logo{
    height: 80px;
    width: auto;
    transition: transform 0.3s ease;
}

.navbar-brand:hover .navbar-logo{
    transform: scale(1.2);
}

.navbar-brand span{
    font-size: 1.2rem;
    vertical-align:baseline;
}

/* Hero Section Carousel Fix */
.carousel-item {
    height: 65vh;
    min-height: 550px;
    background: no-repeat center center scroll;
    background-size:cover;
}
.carousel-caption {
    background: rgba(0, 0, 0, 0.3); /* Dark overlay for readability */
    padding: 5px;
    border-radius: 10px;
}


/* The main card container */
.product-card {
    transition: all 0.3s ease-in-out;
    border-radius: 15px; /* Softer corners */
    background: #fff;
}

/* Hover effect for the card itself (lift up & shadow) */
.product-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15) !important;
}

/* Image container to handle overflow during zoom */
.product-card .overflow-hidden {
    border-radius: 12px 12px 0 0;
}

/* The product image */
.product-image {
    height: 250px; /* Fixed height for consistency */
    object-fit: cover;
    transition: transform 0.5s ease; /* Smooth zoom transition */
}

/* Hover effect for the image (zoom in) */
.product-card:hover .product-image {
    transform: scale(1.08);
}

/* Button styling for better contrast on hover */
.product-card .btn-primary {
    background-color: #0d6efd;
    border-color: #0d6efd;
}
.product-card .btn-primary:hover {
    background-color: #0b5ed7;
    border-color: #0a58ca;
}

/* Product Cards & Gallery Images Hover Effect */
.hover-effect {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hover-effect:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.15) !important;
}

/* Gallery Specific */
.gallery-img {
    height: 250px;
    object-fit: cover;
    cursor: pointer;
}

/* Footer Sticky Fix */
footer {
    margin-top: auto;
}