@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css');

:root {
  /* Green Palette */
  --primary-color: #27AE60;
  --secondary-color: #5F6F52;
  --accent-color: #5CB338;
  --light-color: #FEFAE0;
  --dark-color: #0F1021;
  --gradient-primary: linear-gradient(135deg, #2ECC71 0%, #27AE60 100%);
  --hover-color: #1E8449;
  --background-color: #F8FAF8;
  --text-color: #2C3E50;
  --border-color: rgba(39, 174, 96, 0.2);
  --divider-color: rgba(95, 111, 82, 0.1);
  --shadow-dark: rgba(163, 177, 198, 0.4);
  --shadow-light: rgba(255, 255, 255, 1);
  --highlight-color: #E67E22;
  --main-font: 'Lora', serif;
  --alt-font: 'Open Sans', sans-serif;
}

html { scroll-behavior: smooth; }

.hover-underline:hover { text-decoration: underline; }

.neumorphic-card {
    background-color: var(--background-color);
    box-shadow: 6px 6px 12px var(--shadow-dark), -6px -6px 12px var(--shadow-light);
    border: 1px solid var(--border-color);
}

.neumorphic-btn {
    box-shadow: 4px 4px 8px rgba(0,0,0,0.2), -4px -4px 8px rgba(255,255,255,0.1);
}
.neumorphic-btn:hover {
    background-color: var(--hover-color) !important;
}

/* Mobile Menu Logic via CSS */
@media (max-width: 1024px) {
    #menu-toggle:checked ~ .navigation {
        display: flex;
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        background-color: var(--primary-color);
        padding: 1rem;
        flex-direction: column;
        align-items: center;
    }
}