/* Custom styles beyond Tailwind */
:root {
    --forest-50: #f2f7f4;
    --forest-100: #e3efe6;
    --forest-200: #c5dfc8;
    --forest-300: #9ac59e;
    --forest-400: #6fa372;
    --forest-500: #4f8354;
    --forest-600: #3d6742;
    --forest-700: #315235;
    --forest-800: #28422c;
    --forest-900: #223725;
    --forest-950: #111b12;
}

/* Smooth focus styles */
*:focus-visible {
    outline: 2px solid #4f8354;
    outline-offset: 2px;
}

/* Selection color */
::selection {
    background-color: #4f8354;
    color: white;
}

/* Subtle pattern for off-white sections */
.bg-offwhite {
    background-color: #FAFAF7;
    background-image: radial-gradient(circle at 1px 1px, rgba(40, 66, 44, 0.03) 1px, transparent 0);
    background-size: 24px 24px;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #f2f7f4;
}
::-webkit-scrollbar-thumb {
    background: #9ac59e;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #6fa372;
}

/* Ensure form inputs have consistent appearance */
input, textarea, select {
    font-family: inherit;
}

/* Subtle hover lift for cards */
.bg-white.rounded-2xl {
    will-change: transform;
}

.bg-white.rounded-2xl:hover {
    transform: translateY(-2px);
}
