@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;600&family=Roboto:wght@400;500&display=swap');

:root {
  /* Energy Orange Palette */
  --primary-color: #E67E22;
  --secondary-color: #D35400;
  --accent-color: #F39C12;
  --light-color: #FEF5E7;
  --dark-color: #6E2C00;
  --gradient-primary: linear-gradient(135deg, #F8C471 0%, #E67E22 100%);
  --hover-color: #CA6F1E;
  --background-color: #FFFFFF;
  --text-color: #212F3C;
  
  /* Neumorphism Vars */
  --border-color: rgba(230, 126, 34, 0.2);
  --divider-color: rgba(211, 84, 0, 0.1);
  --shadow-light: #ffffff;
  --shadow-dark: #e5e7e9;
  --highlight-color: #2980B9; /* Blue contrast */
  
  --main-font: 'Oswald', sans-serif;
  --alt-font: 'Roboto', sans-serif;
}

body { font-family: var(--alt-font); color: var(--text-color); background-color: var(--background-color); margin: 0; overflow-x: hidden; }
h1, h2, h3, h4, h5, h6 { font-family: var(--main-font); margin-bottom: 0.5em; letter-spacing: 0.5px; }

/* Soft Neumorphism */
.neu-flat { background: var(--background-color); box-shadow: 8px 8px 16px var(--shadow-dark), -8px -8px 16px var(--shadow-light); border-radius: 12px; }
.neu-pressed { background: #fdfdfd; box-shadow: inset 5px 5px 10px #ebebeb, inset -5px -5px 10px #ffffff; border-radius: 8px; border: 1px solid #eee; }
.neu-btn { background: var(--gradient-primary); color: white; border: none; padding: 15px 35px; border-radius: 30px; box-shadow: 4px 4px 10px rgba(230, 126, 34, 0.3); transition: transform 0.2s; cursor: pointer; display: inline-block; text-decoration: none; text-transform: uppercase; font-weight: 500; }
.neu-btn:hover { transform: scale(1.05); box-shadow: 6px 6px 15px rgba(230, 126, 34, 0.5); color: white; }

/* Mobile Menu */
#menu-toggle { display: none; }
.mobile-menu { display: none; }
@media (max-width: 768px) {
    .desktop-nav { display: none; }
    .hamburger-icon { display: block; cursor: pointer; font-size: 1.5rem; color: var(--dark-color); }
    #menu-toggle:checked + .mobile-menu { display: block; position: absolute; top: 70px; left: 0; width: 100%; background: white; padding: 20px; z-index: 50; box-shadow: 0 5px 15px rgba(0,0,0,0.1); }
    .mobile-menu ul { list-style: none; padding: 0; }
    .mobile-menu li { margin-bottom: 10px; text-align: center; }
    .mobile-menu a { color: var(--primary-color); text-decoration: none; font-size: 1.2rem; font-family: var(--main-font); }
}

.section-pad { padding-top: 10vh; padding-bottom: 10vh; }
.feature-icon { background: var(--light-color); width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; border-radius: 50%; color: var(--secondary-color); font-size: 1.5rem; margin-bottom: 1rem; box-shadow: inset 2px 2px 5px rgba(0,0,0,0.05); }