/* ISO Consulting Forum shared styles, light theme */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root {
  --ink: #14463a;        /* forest green, headings + primary */
  --ink-soft: #2d5446;
  --lime: #93c83d;       /* accent */
  --lime-dark: #79ad2c;
  --bg: #ffffff;
  --bg-alt: #f4f7f5;
  --border: #e3eae7;
  --muted: #5a6b64;
}

html { scroll-behavior: smooth; }

body, button, input, select, textarea {
  font-family: 'Inter', system-ui, sans-serif;
  letter-spacing: -0.005em;
}

h1, h2, h3, h4, h5, h6 {
  font-family: 'Inter', system-ui, sans-serif;
  letter-spacing: -0.02em;
  color: var(--ink);
}

/* Mobile heading scale */
@media (max-width: 640px) {
  h1.text-5xl, h1.md\:text-6xl { font-size: 2.25rem; line-height: 1.1; }
  h2.text-3xl, h2.text-4xl, h2.md\:text-5xl { font-size: 1.75rem; line-height: 1.18; }
  section.pt-40 { padding-top: 7rem !important; }
}

/* Primary button (forest green) */
.btn-primary {
  background: var(--ink);
  color: #ffffff;
  font-weight: 600;
  transition: background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
  box-shadow: 0 8px 24px -10px rgba(20, 70, 58, 0.5);
}
.btn-primary:hover {
  background: #0f3a30;
  transform: translateY(-1px);
  box-shadow: 0 14px 32px -10px rgba(20, 70, 58, 0.6);
}

/* Lime button */
.btn-lime {
  background: var(--lime);
  color: var(--ink);
  font-weight: 700;
  transition: background 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
  box-shadow: 0 8px 24px -10px rgba(147, 200, 61, 0.7);
}
.btn-lime:hover {
  background: var(--lime-dark);
  transform: translateY(-1px);
}

/* Outline button */
.btn-outline {
  border: 2px solid var(--ink);
  color: var(--ink);
  font-weight: 600;
  transition: background 0.18s ease, color 0.18s ease;
}
.btn-outline:hover {
  background: var(--ink);
  color: #ffffff;
}

/* Card */
.card {
  background: #ffffff;
  border: 1px solid var(--border);
  border-radius: 1rem;
  box-shadow: 0 1px 2px rgba(20, 70, 58, 0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}
.card-hover:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 40px -18px rgba(20, 70, 58, 0.28);
  border-color: var(--lime);
}

/* Chip */
.chip {
  background: rgba(147, 200, 61, 0.16);
  color: var(--ink);
  font-weight: 700;
}
.chip-solid {
  background: var(--lime);
  color: var(--ink);
  font-weight: 700;
}

/* Soft hero wash */
.hero-wash {
  background:
    radial-gradient(900px 420px at 15% 0%, rgba(147, 200, 61, 0.12), transparent 60%),
    radial-gradient(800px 500px at 100% 10%, rgba(20, 70, 58, 0.06), transparent 55%),
    #ffffff;
}

/* Forest band (dark green section) */
.band {
  background: var(--ink);
  color: #ffffff;
}
.band h1, .band h2, .band h3 { color: #ffffff; }

/* Lime divider */
.divider-lime {
  height: 3px;
  width: 56px;
  background: var(--lime);
  border-radius: 999px;
}

/* Timeline / step number */
.step-num {
  background: var(--lime);
  color: var(--ink);
  font-weight: 800;
}

/* Link underline */
.link-ink {
  color: var(--ink);
  font-weight: 600;
  text-decoration: none;
  border-bottom: 2px solid rgba(147, 200, 61, 0.5);
  transition: border-color 0.2s ease;
}
.link-ink:hover { border-color: var(--lime); }

/* Coming soon ribbon */
.ribbon {
  background: rgba(147, 200, 61, 0.18);
  color: var(--ink);
  font-weight: 700;
  letter-spacing: 0.08em;
}
