:root {
  /* Minimalist Scientific Palette */
  --primary-color: #00B4D8; /* Bright Cyan */
  --secondary-color: #03045E; /* Dark Navy */
  --accent-color: #90E0EF; /* Light Cyan */
  --light-color: #F8F9FA; /* Off white */
  --dark-color: #343A40;
  --gradient-primary: linear-gradient(90deg, #00B4D8 0%, #0077B6 100%);
  --hover-color: #0096C7;
  --background-color: #FFFFFF;
  --text-color: #495057;
  --border-color: #E9ECEF;
  --divider-color: #DEE2E6;
  --shadow-color: rgba(0, 180, 216, 0.1);
  --highlight-color: #FF0054; /* Pink/Red for strict contrast on price */

  /* Fonts */
  --main-font: 'Open Sans', sans-serif;
  --heading-font: 'Montserrat', sans-serif;
}

body { font-family: var(--main-font); color: var(--text-color); background-color: var(--light-color); }
h1, h2, h3, h4 { font-family: var(--heading-font); color: var(--secondary-color); font-weight: 600; }

.card-shadow {
    box-shadow: 0 10px 30px -5px rgba(0, 0, 0, 0.05);
    background: white;
    border: 1px solid var(--border-color);
}

.btn-science {
    background-color: var(--secondary-color);
    color: white;
    border-radius: 50px; /* Pill shape */
    transition: 0.3s;
    font-weight: 600;
}
.btn-science:hover {
    background-color: var(--primary-color);
    box-shadow: 0 4px 12px var(--shadow-color);
}

/* Scientific Grid Background */
.bg-pattern {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; opacity: 0.4; pointer-events: none;
    background-image: radial-gradient(#00B4D8 0.5px, transparent 0.5px), radial-gradient(#00B4D8 0.5px, #ffffff 0.5px);
    background-size: 20px 20px;
    background-position: 0 0, 10px 10px;
}