/* css/style.css */

/* Global body styling */
body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    margin: 0;
    padding: 0;
}

main {
    flex: 1;
}
/* Bouton lire */
.btn-flat:hover {
	background-color: lightgrey;
}

/* Header/Navbar specific styles */
.logo-header {
    height: 40px; /* Adjust logo size */
    width: auto;
}

.navbar-brand {
    font-weight: bold;
    font-size: 1.5rem;
}

/* Carousel adjustments */
.carousel-item img {
    max-height: 450px; /* Max height for carousel images */
    object-fit: cover; /* Ensures images cover the area without distortion */
}

/* Responsive container */
.container {
    margin-top: 80px;
}

/* Improved responsive text */
h1, h2, h3, h4 {
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Responsive images */
img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Responsive tables (if used) */
table {
    width: 100%;
    overflow-x: auto;
}

@media (max-width: 600px) {
    table {
        font-size: 0.9rem;
    }
}

/* Button responsiveness */
.btn, .btn-flat, .btn-large {
    word-wrap: break-word;
    white-space: normal;
}

/* General section spacing */
section {
    padding: 3rem 0; /* Add vertical padding to sections */
}

/* Card styling for consistency */
.card {
    border-radius: .75rem; /* Rounded corners for cards */
    overflow: hidden; /* Ensures image corners are rounded */
    box-shadow: 0 4px 8px rgba(0,0,0,.1); /* Subtle shadow */
}

.card-img-top {
    border-top-left-radius: .75rem;
    border-top-right-radius: .75rem;
}

.card-title {
    font-weight: 600;
    color: #0d6efd; /* Primary color for titles */
}

/* Form styling */
form .form-control {
    border-radius: .5rem;
}

/* Alert messages (for forms) */
.alert {
    margin-bottom: 1rem;
    border-radius: .5rem;
}

/* Footer styling */
footer {
    background-color: #0d6efd !important; /* Ensure primary color */
}

footer a {
    transition: color 0.3s ease;
}

footer a:hover {
    color: #e2e6ea !important; /* Lighter on hover */
}

/* Adjustments for responsive typography */
@media (max-width: 767.98px) {
    .navbar-brand {
        font-size: 1.25rem;
    }
    .logo-header {
        height: 35px;
    }
    .carousel-item img {
        max-height: 300px; /* Smaller carousel on mobile */
    }
    h2 {
        font-size: 1.75rem;
    }
    .lead {
        font-size: 1rem;
    }
}
