:root {
  /* Color Palette: #337357, #5CB338, #FFC145, #FEFAE0 */
  --primary-color: #337357;
  --primary-dark: #204C38;
  --secondary-color: #5CB338;
  --bg-color: #FEFAE0;
  --text-color: #2D3748;
  --accent-color: #FFC145;
  --accent-dark: #D49D2C;
  --border-color: rgba(51, 115, 87, 0.15);
  --highlight-color: #C0392B; /* Deep complementary red/orange */
  
  --font-heading: 'Lora', serif;
  --font-body: 'Poppins', sans-serif;
}

body {
    background-color: var(--bg-color);
    color: var(--text-color);
    font-family: var(--font-body);
    margin: 0;
}

.font-heading { font-family: var(--font-heading); }
.font-body { font-family: var(--font-body); }

.bg-pattern {
    position: fixed;
    top: 0; left: 0; width: 100%; height: 100%;
    z-index: 0;
    opacity: 0.08;
    background-image: url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 40a40 40 0 1 0 80 0 40 40 0 1 0-80 0z' fill='none' stroke='%23337357' stroke-width='1'/%3E%3C/svg%3E");
}

.app-header {
    background-color: #FFFFFF;
    border-bottom: 1px solid var(--border-color);
}
.brand-color { color: var(--secondary-color); }
.brand-text { color: var(--primary-color); }

.border-style { border: 1px solid var(--border-color); }
.text-brand { color: var(--primary-dark); }

.assurance-block {
    background-color: var(--bg-color);
    border: 1px dashed var(--secondary-color);
    color: var(--primary-color);
}

.price-display { color: var(--highlight-color); }

.btn-primary {
    background-color: var(--secondary-color);
    color: #FFFFFF;
    box-shadow: 0 4px 12px rgba(92, 179, 56, 0.4);
    transition: background-color 0.3s;
}
.btn-primary:hover { background-color: var(--primary-color); }

.feature-icon {
    background-color: var(--bg-color);
    color: var(--primary-color);
    border: 2px solid var(--accent-color);
}

.callout-block {
    background-color: var(--highlight-color);
    color: #FFFFFF;
}

.feedback-area {
    background-color: var(--primary-dark);
    color: #FFFFFF;
}
.feedback-card {
    background-color: var(--primary-color);
    border-top: 4px solid var(--accent-color);
}
.text-accent { color: var(--accent-color); }

.app-footer {
    background-color: var(--primary-color);
    color: #FFFFFF;
}
.hover-underline:hover { text-decoration: underline; color: var(--accent-color); }