@layer utilities {
  .needle-text-acid {
    color: var(--pine-acid);
  }

  .needle-text-muted {
    color: var(--pine-muted);
  }

  .needle-stack {
    display: grid;
    gap: var(--needle-space-sm);
  }

  .needle-align-end {
    display: flex;
    justify-content: flex-end;
  }

  .needle-success {
    min-height: 60vh;
    display: grid;
    align-content: center;
    justify-content: center;
    text-align: center;
    gap: var(--needle-space-md);
    padding: var(--needle-space-2xl) var(--needle-gutter);
  }
}

@layer responsive {
  @media (max-width: 599px) {
    .needle-btn--block-mobile {
      width: 100%;
    }

    .needle-daylight__panel {
      grid-template-columns: 6.5rem 1fr;
    }
  }

  @media (min-width: 1440px) {
    .needle-legal__body {
      max-width: 48rem;
    }
  }

  @media (min-width: 1920px) {
    :root {
      --needle-max-width: 1440px;
    }
  }
}
