/* Enhanced Hero Section Styling - Mobile-first approach */

/* Move the navbar higher to avoid covering the logo - with higher specificity */
.navbar, nav.navbar, header .navbar {
    position: fixed !important;
    top: -30px !important; /* Move navbar even higher up */
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 500 !important; /* Lower z-index so logo is always on top */
    background-color: rgba(255, 255, 255, 0.95) !important;
    padding-top: 40px !important; /* Add more padding to compensate */
    box-sizing: border-box !important;
}

/* Reset hero section layout with proper spacing for top logo */
.hero {
    position: relative !important;
    padding-top: 50px !important; /* Reduce top padding since logo is back at top */
    margin-top: 30px !important; /* Add margin to push below navbar */
    height: auto !important;
    min-height: 100vh !important;
    overflow: visible !important;
    z-index: 1 !important;
}

/* Position logo at the top of hero section with maximum visibility */
.clean-logo-container, div.clean-logo-container, header .clean-logo-container {
    position: relative !important; /* Use relative positioning */
    top: 40px !important; /* Push down to clear navbar completely */
    left: 0 !important;
    width: 100% !important;
    padding: 20px 0 0 0 !important; 
    margin: 0 auto 30px auto !important; /* Add bottom margin */
    z-index: 9999 !important; /* Highest possible z-index */
    text-align: center !important;
    display: block !important;
}

/* Make the logo stand out clearly with animations */
.clean-logo {
    position: relative !important;
    z-index: 9500 !important;
    font-size: 140px !important;
    line-height: 1 !important;
    display: inline-block !important;
    text-shadow: 0 0 20px rgba(255, 255, 255, 0.95) !important;
    background-color: rgba(255, 255, 255, 0.1) !important;
    padding: 20px !important;
    border-radius: 10px !important;
    margin: 0 auto !important;
    color: #8A2BE2 !important; /* Ensure logo color is vibrant */
    font-weight: bold !important;
    animation: logo-float 8s ease-in-out infinite !important;
    opacity: 1 !important;
}

/* Logo floating animation */
@keyframes logo-float {
    0%, 100% { transform: translateY(0) translateX(0); }
    25% { transform: translateY(-12px) translateX(5px); }
    50% { transform: translateY(-20px) translateX(0); }
    75% { transform: translateY(-12px) translateX(-5px); }
}

/* Responsive adjustments for different desktop sizes */
@media (max-width: 1200px) {
    .clean-logo-container {
        top: 110px !important;
    }
    
    .clean-logo {
        font-size: 130px !important;
    }
}

@media (max-width: 992px) {
    .clean-logo-container {
        top: 100px !important;
    }
    
    .clean-logo {
        font-size: 110px !important;
        padding: 15px !important;
    }
    
    .hero {
        padding-top: 100px !important;
    }
}

/* Mobile adjustments with absolute positioning */
@media (max-width: 767px) {
    .clean-logo-container {
        top: 80px !important;
        position: absolute !important;
    }
    
    .hero {
        padding-top: 60px !important;
        margin-top: 60px !important;
    }
    
    .clean-logo {
        font-size: 90px !important;
        padding: 10px !important;
    }
    
    /* Push down hero title to make room for logo */
    .hero-statement {
        margin-top: 120px !important;
        position: relative !important;
        z-index: 5000 !important;
    }
    
    /* Adjust hero title to ensure it appears below logo */
    .hero-title {
        margin-top: 60px !important;
    }
}
