/* ===== GLOBAL STYLES & COLOR VARIABLES ===== */
    /* Mobile-first responsive design with dark theme background */
    /* Primary: Orange #C4A050, Secondary: Navy #2E3192, Background: Black #0A0A0A */
    
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    :root {
      --bg-dark: #0D1B2A;
      --text-light: #F5F5F5;
      --text-muted: #AAAAAA;
      --text-sub: #888888;
      --border-dark: #1a3020;
      --accent-orange: #C4A050;
      --accent-navy: #2E3192;
      --card-bg: #0A1A12;
      --input-bg: #0A1A12;
      --input-border: #1a3020;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
      background: var(--bg-dark);
      color: var(--text-light);
      line-height: 1.6;
      font-size: 16px;
      overflow-x: hidden;
    }

    /* ===== HERO SECTION STYLES ===== */
    /* Main landing area with headline, subtext, and primary CTA */
    /* Mobile Padding: Ensures text never touches viewport edges */
    /* Breakpoints: sm(640px), md(768px), lg(1024px) */
    
    .hero-section {
      padding: 100px 24px 80px;
      max-width: 900px;
      margin: 0 auto;
      text-align: center;
    }

    .hero-section h1 {
      font-size: 36px;
      font-weight: 700;
      line-height: 1.2;
      letter-spacing: -0.02em;
      color: var(--text-light);
      margin-bottom: 20px;
    }

    @media (min-width: 768px) {
      .hero-section h1 {
        font-size: 48px;
        margin-bottom: 24px;
      }
    }

    .hero-subheadline {
      font-size: 18px;
      color: var(--text-muted);
      max-width: 600px;
      margin: 0 auto 40px;
      line-height: 1.5;
    }

    @media (min-width: 768px) {
      .hero-subheadline {
        font-size: 20px;
        margin-bottom: 48px;
      }
    }

    /* ===== BUTTON STYLES (UNIVERSAL) ===== */
    /* Solid orange background, white text, generous padding */
    /* All CTAs use this consistent style */
    
    .btn {
      display: inline-block;
      background: var(--accent-orange);
      color: #FFFFFF;
      font-size: 15px;
      font-weight: 600;
      padding: 16px 40px;
      border-radius: 8px;
      text-decoration: none;
      border: none;
      cursor: pointer;
      transition: opacity 0.2s ease, background 0.2s ease;
      text-align: center;
    }

    .btn:0 {
      opacity: 1.0;
      background: #B8922E;
    }

    .btn:active {
      transform: scale(0.98);
    }

    .btn-full-mobile {
      width: 100%;
    }

    @media (min-width: 768px) {
      .btn-full-mobile {
        width: auto;
      }
    }

    /* ===== EMPATHY STRIP SECTION ===== */
    /* Three-column icon + text grid emphasizing emotional support */
    /* Mobile: stacked vertically, Desktop: 3-column grid */
    
    .empathy-section {
      background: linear-gradient(135deg, rgba(232, 82, 26, 0.05) 0%, rgba(46, 49, 146, 0.03) 100%);
      padding: 60px 24px;
      margin: 60px 0;
      border-top: 1px solid var(--border-dark);
      border-bottom: 1px solid var(--border-dark);
    }

    .empathy-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 40px;
      max-width: 900px;
      margin: 0 auto;
    }

    @media (min-width: 768px) {
      .empathy-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 32px;
      }
    }

    .empathy-card {
      text-align: center;
    }

    .empathy-icon {
      font-size: 48px;
      margin-bottom: 16px;
      display: block;
    }

    .empathy-card h3 {
      font-size: 18px;
      font-weight: 600;
      color: var(--text-light);
      margin-bottom: 12px;
    }

    .empathy-card p {
      font-size: 15px;
      color: var(--text-muted);
      line-height: 1.5;
    }

    /* ===== OPTIONS SECTION STYLES ===== */
    /* 5 paths displayed as cards with orange left border accent */
    /* Mobile: full-width stacked, Desktop: single or 2-column layout */
    
    .options-section {
      padding: 80px 24px;
      max-width: 900px;
      margin: 0 auto;
    }

    .options-header {
      margin-bottom: 60px;
    }

    .options-header h2 {
      font-size: 32px;
      font-weight: 700;
      color: var(--text-light);
      margin-bottom: 16px;
      line-height: 1.3;
    }

    @media (min-width: 768px) {
      .options-header h2 {
        font-size: 40px;
      }
    }

    .options-subtext {
      font-size: 16px;
      color: var(--text-muted);
      max-width: 700px;
      line-height: 1.6;
    }

    .options-grid {
      display: grid;
      grid-template-columns: 1fr;
      gap: 24px;
    }

    @media (min-width: 768px) {
      .options-grid {
        grid-template-columns: 1fr 1fr;
        gap: 28px;
      }
    }

    .option-card {
      background: var(--card-bg);
      border: 1px solid var(--input-border);
      border-left: 4px solid var(--accent-orange);
      border-radius: 6px;
      padding: 28px;
      transition: border-color 0.2s ease, background 0.2s ease;
    }

    .option-card:hover {
      border-color: #C4A050;
      background: rgba(196, 160, 80, 0.03);
    }

    .option-card h3 {
      font-size: 18px;
      font-weight: 700;
      color: var(--text-light);
      margin-bottom: 12px;
    }

    .option-card p {
      font-size: 15px;
      color: var(--text-muted);
      line-height: 1.6;
    }

    /* ===== FORM SECTION STYLES ===== */
    /* Lead capture form with simple, safe styling */
    /* Full-width mobile, centered max-width on desktop */
    
    .form-section {
      padding: 80px 24px;
      background: linear-gradient(135deg, rgba(46, 49, 146, 0.05) 0%, rgba(232, 82, 26, 0.03) 100%);
      border-top: 1px solid var(--border-dark);
    }

    .form-container {
      max-width: 600px;
      margin: 0 auto;
    }

    .form-header {
      text-align: center;
      margin-bottom: 48px;
    }

    .form-header h2 {
      font-size: 32px;
      font-weight: 700;
      color: var(--text-light);
      margin-bottom: 16px;
    }

    .form-subtext {
      font-size: 16px;
      color: var(--text-muted);
      line-height: 1.6;
    }

    .form-group {
      margin-bottom: 20px;
    }

    .form-group label {
      display: block;
      font-size: 14px;
      font-weight: 600;
      color: var(--text-light);
      margin-bottom: 8px;
    }

    .form-group input,
    .form-group select {
      width: 100%;
      padding: 14px 16px;
      background: var(--input-bg);
      border: 1px solid var(--input-border);
      border-radius: 6px;
      color: var(--text-light);
      font-size: 15px;
      font-family: 'Inter', sans-serif;
      transition: border-color 0.2s ease;
    }

    .form-group input:focus,
    .form-group select:focus {
      outline: none;
      border-color: var(--accent-orange);
      box-shadow: 0 0 0 3px rgba(232, 82, 26, 0.1);
    }

    .form-group input::placeholder {
      color: var(--text-sub);
    }

    .form-group select {
      cursor: pointer;
      appearance: none;
      background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23AAAAAA' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
      background-repeat: no-repeat;
      background-position: right 12px center;
      background-size: 20px;
      padding-right: 40px;
    }

    .form-submit-wrapper {
      margin-top: 32px;
      display: flex;
      justify-content: center;
    }

    .form-submit-wrapper .btn {
      width: 100%;
    }

    @media (min-width: 768px) {
      .form-submit-wrapper .btn {
        width: auto;
      }
    }

    .form-success {
      display: none;
      text-align: center;
      padding: 40px 24px;
      background: rgba(232, 82, 26, 0.1);
      border: 1px solid var(--accent-orange);
      border-radius: 8px;
      margin-top: 20px;
    }

    .form-success.show {
      display: block;
    }

    .form-success h3 {
      font-size: 20px;
      font-weight: 700;
      color: var(--accent-orange);
      margin-bottom: 12px;
    }

    .form-success p {
      font-size: 15px;
      color: var(--text-muted);
    }

    .form-error {
      display: none;
      text-align: center;
      padding: 16px;
      background: rgba(232, 82, 26, 0.15);
      border: 1px solid var(--accent-orange);
      border-radius: 6px;
      margin-bottom: 20px;
      color: #FFB3A0;
      font-size: 14px;
    }

    .form-error.show {
      display: block;
    }

    /* ===== QUALIFYING SECTION STYLES ===== */
    /* Initial qualifying questions shown before main form */
    /* Hidden when user selects disqualifying answer */
    
    .qualifying-section {
      display: block;
    }

    .qualifying-section.hidden {
      display: none;
    }

    .disqualify-message {
      display: none;
      text-align: center;
      padding: 40px 24px;
      background: rgba(196, 160, 80, 0.1);
      border: 1px solid var(--accent-orange);
      border-radius: 8px;
      margin-top: 20px;
    }

    .disqualify-message.show {
      display: block;
    }

    .disqualify-message h3 {
      font-size: 20px;
      font-weight: 700;
      color: var(--accent-orange);
      margin-bottom: 12px;
    }

    .disqualify-message p {
      font-size: 15px;
      color: var(--text-muted);
      line-height: 1.6;
    }

    .main-form-fields {
      display: none;
    }

    .main-form-fields.visible {
      display: block;
    }

    /* ===== FOOTER SECTION STYLES ===== */
    /* Legal disclaimer and copyright information */
    
    .footer-section {
      padding: 60px 24px;
      background: var(--bg-dark);
      border-top: 1px solid var(--border-dark);
      text-align: center;
    }

    .footer-disclaimer {
      max-width: 800px;
      margin: 0 auto 32px;
      font-size: 13px;
      color: var(--text-sub);
      line-height: 1.6;
    }

    .footer-disclaimer strong {
      color: var(--text-muted);
    }

    .footer-copyright {
      font-size: 12px;
      color: var(--text-sub);
    }

    /* ===== UTILITY CLASSES ===== */
    
    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border-width: 0;
    }

    .loading {
      opacity: 0.6;
      pointer-events: none;
    }