/* === Contact page === */
    .contact-grid {
      display: grid;
      gap: 3rem;
      align-items: start;
    }
    @media (min-width: 1024px) {
      .contact-grid { grid-template-columns: 7fr 5fr; gap: 4rem; }
    }
    .contact-info-card {
      border-radius: 1.25rem;
      border: 1px solid rgba(232, 236, 242, 0.06);
      background: rgba(31, 33, 40, 0.5);
      padding: 1.5rem;
    }
    .pill-group {
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
    }
    .budget-pill, .timeline-pill {
      cursor: pointer;
      padding: 0.4rem 0.85rem;
      border-radius: 999px;
      border: 1px solid rgba(232, 236, 242, 0.1);
      background: rgba(31, 33, 40, 0.4);
      font-family: 'IBM Plex Mono', monospace;
      font-size: 0.65rem;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      color: rgba(154, 165, 181, 0.85);
      transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
    }
    .budget-pill:hover, .timeline-pill:hover {
      border-color: rgba(65, 159, 216, 0.35);
      color: #e8ecf2;
    }
    .budget-pill.is-selected, .timeline-pill.is-selected {
      border-color: rgba(237, 50, 134, 0.5);
      background: rgba(237, 50, 134, 0.12);
      color: #ed3286;
    }
    .project-type-check {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      font-size: 0.9rem;
      color: rgba(154, 165, 181, 0.95);
      cursor: pointer;
    }
    .project-type-check input {
      accent-color: #ed3286;
      width: 1rem;
      height: 1rem;
    }
    .expect-step {
      position: relative;
      padding-left: 2rem;
    }
    .expect-step::before {
      content: '';
      position: absolute;
      left: 0.35rem;
      top: 0.5rem;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: #419fd8;
    }
    .expect-step:not(:last-child)::after {
      content: '';
      position: absolute;
      left: 0.68rem;
      top: 1.25rem;
      bottom: -1.5rem;
      width: 1px;
      background: rgba(232, 236, 242, 0.08);
    }
    .office-strip {
      border-top: 1px solid rgba(232, 236, 242, 0.06);
      border-bottom: 1px solid rgba(232, 236, 242, 0.06);
      background: rgba(31, 33, 40, 0.35);
    }
