 :root {
      --tj-dark: #10221b;
      --tj-green: #256f4a;
      --tj-green-dark: #1a5136;
      --tj-gold: #d3a943;
      --tj-cream: #f7f4ec;
      --tj-muted: #66736d;
    }

    html { scroll-behavior: smooth; }
    body { color: var(--tj-dark); }
    section { scroll-margin-top: 84px; }

    .navbar-brand { letter-spacing: .02em; }
    .text-brand { color: var(--tj-green) !important; }
    .bg-brand { background: var(--tj-green) !important; }
    .bg-dark-brand { background: var(--tj-dark) !important; }
    .bg-cream { background: var(--tj-cream); }

    .btn-brand {
      --bs-btn-color: #fff;
      --bs-btn-bg: var(--tj-green);
      --bs-btn-border-color: var(--tj-green);
      --bs-btn-hover-color: #fff;
      --bs-btn-hover-bg: var(--tj-green-dark);
      --bs-btn-hover-border-color: var(--tj-green-dark);
      --bs-btn-focus-shadow-rgb: 37, 111, 74;
    }

    .btn-outline-brand {
      --bs-btn-color: var(--tj-green);
      --bs-btn-border-color: var(--tj-green);
      --bs-btn-hover-color: #fff;
      --bs-btn-hover-bg: var(--tj-green);
      --bs-btn-hover-border-color: var(--tj-green);
    }

    .hero {
      min-height: 88vh;
      display: flex;
      align-items: center;
      background:
        radial-gradient(circle at 85% 20%, rgba(211, 169, 67, .20), transparent 30%),
        linear-gradient(135deg, #f8faf8 0%, #eef5f1 55%, #f7f4ec 100%);
    }

    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: .5rem;
      font-size: .8rem;
      font-weight: 700;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: var(--tj-green);
    }

    .hero-title { max-width: 800px; }
    .hero-copy { max-width: 680px; color: var(--tj-muted); }

    .hero-panel {
      background: rgba(255,255,255,.88);
      border: 1px solid rgba(16,34,27,.08);
      box-shadow: 0 1.25rem 3rem rgba(16,34,27,.12);
      backdrop-filter: blur(8px);
    }

    .icon-box {
      width: 3rem;
      height: 3rem;
      display: inline-grid;
      place-items: center;
      border-radius: .85rem;
      color: var(--tj-green);
      background: rgba(37,111,74,.10);
    }

    .card-lift {
      border: 0;
      box-shadow: 0 .75rem 2rem rgba(16,34,27,.08);
      transition: transform .2s ease, box-shadow .2s ease;
    }

    .card-lift:hover {
      transform: translateY(-4px);
      box-shadow: 0 1rem 2.5rem rgba(16,34,27,.13);
    }

    .number-badge {
      width: 2.75rem;
      height: 2.75rem;
      display: inline-grid;
      place-items: center;
      border-radius: 50%;
      background: var(--tj-green);
      color: #fff;
      font-weight: 700;
    }

    .check-list li { margin-bottom: .85rem; }
    .check-list i { color: var(--tj-green); }

    .quote-mark {
      color: var(--tj-gold);
      font-size: 2.25rem;
      line-height: 1;
    }

    .cta-panel {
      background:
        radial-gradient(circle at 90% 10%, rgba(211,169,67,.22), transparent 28%),
        var(--tj-dark);
    }

    .form-control:focus,
    .form-select:focus {
      border-color: var(--tj-green);
      box-shadow: 0 0 0 .25rem rgba(37,111,74,.15);
    }

    .navbar .nav-link.active,
    .navbar .nav-link:hover { color: var(--tj-green); }

    @media (max-width: 991.98px) {
      .hero { min-height: auto; padding: 7rem 0 4rem; }
    }