:root {
  /* Palette: #D35400, #E67E22, #F39C12, #2C3D4F */
  --primary-color: #D35400;
  --secondary-color: #E67E22;
  --accent-color: #F39C12;
  --light-color: #FDF2E9;
  --dark-color: #2C3D4F;
  --gradient-primary: linear-gradient(45deg, #E67E22 0%, #D35400 100%);
  --hover-color: #A04000;
  --background-color: #FFFFFF;
  --text-color: #2C3D4F;
  --border-color: rgba(211, 84, 0, 0.2);
  --divider-color: rgba(230, 126, 34, 0.1);
  --shadow-color: rgba(211, 84, 0, 0.15);
  --highlight-color: #16A085; /* Teal complement */
  
  --main-font: 'Poppins', sans-serif;
  --alt-font: 'Montserrat', sans-serif;
}

/* Base */
body {
    font-family: var(--main-font);
    color: var(--text-color);
    background-color: var(--background-color);
}
h1, h2, h3, h4 { font-family: var(--alt-font); font-weight: 800; }

/* Elements */
.btn-primary {
    background: var(--gradient-primary);
    color: white;
    border-radius: 50px;
    box-shadow: 0 4px 15px var(--shadow-color);
    transition: transform 0.2s;
}
.btn-primary:hover {
    transform: scale(1.02);
    box-shadow: 0 6px 20px var(--shadow-color);
}

.card-decor {
    background: white;
    border-radius: 20px;
    box-shadow: 0 10px 40px -10px rgba(0,0,0,0.08);
    border: 1px solid var(--light-color);
}

.price-display {
    color: var(--primary-color);
    font-family: var(--alt-font);
}

/* Geometric Pattern */
.bg-pattern {
    background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23D35400' fill-opacity='0.03' fill-rule='evenodd'%3E%3Cpath d='M0 40L40 0H20L0 20M40 40V20L20 40'/%3E%3C/g%3E%3C/svg%3E");
    position: fixed;
    width: 100%; height: 100%; top:0; left:0; z-index:0;
}