:root {
  --primary-green: #1B5E20;
  --primary-green-light: #2E7D32;
  --primary-green-dark: #0D3D12;
  --gold-accent: #D4AF37;
  --gold-hover: #C49A2C;
  --white: #FFFFFF;
  --off-white: #F8F9FA;
  --text-dark: #1A1A1A;
  --text-gray: #555555;
  --text-light: #888888;
  --shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.08);
  --shadow-medium: 0 8px 30px rgba(0, 0, 0, 0.12);
  --shadow-strong: 0 12px 40px rgba(0, 0, 0, 0.15);
  --border-radius: 12px;
  --border-radius-lg: 20px;
  --transition: all 0.3s ease;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: var(--text-dark);
  background-color: var(--white);
  -webkit-font-smoothing: antialiased;
}
a { text-decoration: none; color: inherit; transition: var(--transition); }
ul { list-style: none; }
img { max-width: 100%; height: auto; display: block; }

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% { transform: translateX(-50%) translateY(0); }
  40% { transform: translateX(-50%) translateY(-10px); }
  60% { transform: translateX(-50%) translateY(-5px); }
}

@media (max-width: 1024px) {
  [data-articles-grid] { grid-template-columns: repeat(2, 1fr) !important; }
  [data-hero-title] { font-size: 2.8rem !important; }
}
@media (max-width: 768px) {
  [data-nav-menu] { display: none !important; }
  [data-mobile-toggle] { display: flex !important; }
  [data-hero-title] { font-size: 2.2rem !important; }
  [data-hero-subtitle] { font-size: 1.1rem !important; }
  [data-section-title] { font-size: 2rem !important; }
  [data-articles-grid] { grid-template-columns: 1fr !important; }
  [data-tips-grid] { grid-template-columns: 1fr !important; }
  [data-newsletter-form] { flex-direction: column !important; }
  [data-footer-content] { flex-direction: column !important; gap: 24px !important; text-align: center !important; }
  [data-footer-links] { flex-direction: column !important; gap: 16px !important; }
}
@media (max-width: 480px) {
  [data-hero-title] { font-size: 1.8rem !important; }
  [data-hero-btn] { padding: 14px 28px !important; font-size: 0.9rem !important; }
  [data-section] { padding: 60px 0 !important; }
}
