/* Custom CSS */

/* Hero Section Adjustments */
.hero-section {
    position: relative;
    padding-top: 12rem !important; /* Much more space at top to account for fixed header */
    padding-bottom: 6rem !important;
    min-height: 500px;
    display: flex;
    align-items: center;
}

/* Create a dark overlay for hero background images */
.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to right, rgba(17, 24, 39, 0.9), rgba(17, 24, 39, 0.7));
    z-index: 1;
}

.hero-section .container {
    position: relative;
    z-index: 2;
}

.hero-section h1 {
    font-size: 2.5rem;
    line-height: 1.2;
    margin-bottom: 1.5rem;
}

@media (min-width: 768px) {
    .hero-section {
        padding-top: 14rem !important;
        padding-bottom: 8rem !important;
        min-height: 600px;
    }
    
    .hero-section h1 {
        font-size: 3.5rem;
    }
}

/* Button Styles */
.contact-cta-button {
    background-color: #0284c7 !important;
    color: white !important;
    font-weight: 500;
}

.contact-cta-button:hover {
    background-color: #0369a1 !important;
}

/* Calculator Results */
.result-content {
    display: none;
}

.result-content.active {
    display: block;
}

/* Animations */
.animate-fade-up {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.animate-fade-up.active {
    opacity: 1;
    transform: translateY(0);
}

.animate-fade-in {
    opacity: 0;
    transition: opacity 0.6s ease-out;
}

.animate-fade-in.active {
    opacity: 1;
}

.animate-fade-right {
    opacity: 0;
    transform: translateX(-20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.animate-fade-right.active {
    opacity: 1;
    transform: translateX(0);
}

.animate-fade-left {
    opacity: 0;
    transform: translateX(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.animate-fade-left.active {
    opacity: 1;
    transform: translateX(0);
}

/* Delay animations */
[data-delay="100"] {
    transition-delay: 0.1s;
}

[data-delay="200"] {
    transition-delay: 0.2s;
}

[data-delay="300"] {
    transition-delay: 0.3s;
}

[data-delay="400"] {
    transition-delay: 0.4s;
}


/* Shadow styles */
.shadow-card {
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
}

.shadow-soft {
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.05), 0 8px 10px -6px rgba(0, 0, 0, 0.01);
} 