:root {
  /* Selected Palette: #337357, #5F6F52, #EAE4D5, #D35400 */
  --primary-color: #337357;
  --secondary-color: #5F6F52;
  --accent-color: #8E44AD; /* Slight contrast pop from list */
  --light-color: #FEFAE0;
  --dark-color: #1a2f1a;
  --background-color: #EAE4D5;
  --text-color: #2D3436;
  --highlight-color: #D35400; /* Orange pop */
  
  --border-color: rgba(51, 115, 87, 0.3);
  --divider-color: rgba(95, 111, 82, 0.2);
  --shadow-color: rgba(0, 0, 0, 0.1);
  
  --main-font: 'Lato', sans-serif;
  --heading-font: 'Lora', serif;

  /* Organic Leaf Pattern */
  --bg-pattern: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 20c0-11.046 8.954-20 20-20v20H20zM0 20h20v20H0V20z' fill='%235F6F52' fill-opacity='0.05' fill-rule='evenodd'/%3E%3C/svg%3E");
}

body {
    font-family: var(--main-font);
    background-color: var(--background-color);
    background-image: var(--bg-pattern);
    color: var(--text-color);
}

h1, h2, h3 {
    font-family: var(--heading-font);
}

.primary-btn {
    background-color: var(--highlight-color);
    color: #fff;
    border-radius: 50px;
    transition: transform 0.2s;
}
.primary-btn:hover {
    background-color: #b04600;
    transform: scale(1.02);
}

.card-box {
    background-color: #ffffff;
    border: 1px solid var(--border-color);
    box-shadow: 0 10px 15px -3px var(--shadow-color);
}

.guarantee-badge {
    background-color: var(--light-color);
    border: 2px dashed var(--primary-color);
    color: var(--primary-color);
}

.list-icon {
    color: var(--highlight-color);
}