body {
    font-family: 'Inter', sans-serif;
    scroll-behavior: smooth; /* For browsers that support it natively */
}

.container {
    max-width: 1100px;
}

/* Add a little padding to the top of sections when scrolled to, to account for fixed header */
section[id] {
  scroll-margin-top: 80px; /* Adjust this value based on your header's height */
}

/* Readability: max 90 chars per line for paragraphs */
p { 
    max-width: 90ch; 
    margin-left: auto; 
    margin-right: auto; 
}

/* Improved contrast for accessibility */
.text-accent {
    color: #00B88B;
}

.bg-navy {
    background-color: #0B1F3F;
}

.bg-accent {
    background-color: #00B88B;
}

/* Hover effects */
.hover\:text-accent:hover {
    color: #00B88B;
}

.hover\:bg-accent:hover {
    background-color: #00B88B;
}

/* Animation effects */
.transform {
    transition: transform 0.3s ease;
}

.transform:hover {
    transform: translateY(-5px);
}

/* Card styling */
.card {
    transition: all 0.3s ease;
    border-radius: 0.75rem;
    overflow: hidden;
}

.card:hover {
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

/* Gradient backgrounds */
.bg-gradient-navy {
    background: linear-gradient(135deg, #0B1F3F 0%, #0F2A4A 100%);
}

/* Mobile navigation */
@media (max-width: 768px) {
    .container {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    
    h1 {
        font-size: 2.5rem;
    }
    
    h2 {
        font-size: 2rem;
    }
}

/* Focus styles for accessibility */
a:focus, button:focus {
    outline: 2px solid #00B88B;
    outline-offset: 2px;
}

/* Additional animations */
.blur-3xl {
    filter: blur(60px);
}

/* Make fancy icons for feature sections */
.feature-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 3rem;
    width: 3rem;
    border-radius: 0.5rem;
    background-color: rgba(0, 184, 139, 0.1);
    color: #00B88B;
    margin-bottom: 1rem;
}

/* Ensure section transitions feel smooth */
section {
    position: relative;
    z-index: 1;
}

/* Fallback for browsers that don't support scroll-margin-top or for finer control with JS */
/* Ensure elements targeted by smooth scroll have a position relative or similar if needed for offsets */ 