/* 
 * hero.css
 * Styles for the hero/banner section
 */

/* Hero Section with cross-browser gradient support */
.hero {
    background-color: #003366; /* Fallback for old browsers */
    background-image: url('/api/placeholder/1200/600');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    color: white;
    padding: 80px 0;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.hero::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5); /* Fallback */
    background: -webkit-linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5));
    background: -moz-linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5));
    background: -o-linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5));
    background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5));
    z-index: 1;
}

.hero .container {
    position: relative;
    z-index: 2;
    width: 100%;
}

.hero h1 {
    font-size: clamp(1.75rem, 5vw, 2.625rem); /* Fluid typography */
    margin-bottom: 1.25rem;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
    color: white; /* Explicitly set to white */
}

.hero p {
    font-size: clamp(1rem, 3vw, 1.25rem); /* Fluid typography */
    max-width: 800px;
    margin: 0 auto 1.875rem;
}

.hero-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1.25rem;
    margin-top: 1.875rem;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

/* Responsive adjustments */
@media (max-width: 992px) {
    .hero {
        padding: 60px 0;
    }
}

@media (max-width: 768px) {
    .hero-buttons {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        width: 100%;
        gap: 1rem;
    }
    
    .btn {
        width: 100%;
        padding: 0.85rem 1.5rem;
    }
}

@media (max-width: 576px) {
    .hero {
        padding: 50px 0;
    }
}

/* For print - simplify hero */
@media print {
    .hero {
        background: none !important;
        padding: 20px 0;
        color: #000;
    }
    
    .hero::before {
        display: none;
    }
    
    .hero h1 {
        color: #003366;
        text-shadow: none;
    }
    
    .hero p {
        color: #333;
    }
    
    .hero-buttons {
        display: none;
    }
}