/* Responsive refinements */

@media (max-width: 389px) {
  .container {
    width: min(100% - 1.25rem, var(--container));
  }

  .btn-lg {
    width: 100%;
  }

  .stat-grid {
    grid-template-columns: 1fr;
  }
}

@media (min-width: 390px) and (max-width: 429px) {
  .hero {
    padding-top: 2rem;
  }
}

/* Assessment / hero card refinements */
.hero-panel {
  padding: clamp(1.5rem, 4vw, 2.25rem);
}

.hero-list li {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 0.35rem 0.75rem;
  align-items: start;
}

.hero-list li::before {
  grid-column: 1;
  grid-row: 1 / span 2;
}

.hero-list-label,
.hero-list-detail {
  grid-column: 2;
  min-width: 0;
}

.hero-list-label {
  grid-column: 2;
  font-weight: 700;
  color: var(--color-text);
}

.hero-list-detail {
  grid-column: 2;
  color: var(--color-text-muted);
}

.faq details {
  cursor: pointer;
}

.faq summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: auto;
  margin: calc(-1 * var(--space-4)) calc(-1 * var(--space-5));
  padding: var(--space-4) var(--space-5);
}

.faq summary::after {
  content: "+";
  float: none;
  flex: 0 0 auto;
  margin-left: 1rem;
  color: var(--color-text-dim);
  font-weight: 700;
}

.faq details[open] summary::after {
  content: "–";
}

@media (max-width: 767px) {
  .nav .nav-hide-mobile {
    display: none;
  }

  .workflow-heading {
    padding-bottom: var(--space-3);
  }

  .opp-metrics {
    grid-template-columns: 1fr 1fr;
  }

  .hero-list li {
    grid-template-columns: 18px minmax(0, 1fr);
  }

  .hero-list-label,
  .hero-list-detail {
    grid-column: 2;
  }

  .hero-list-detail {
    margin-top: -0.35rem;
  }
}
@media (min-width: 1024px) {
  .section {
    padding: var(--space-16) 0;
  }
}

@media (min-width: 1440px) {
  :root {
    --container: 1200px;
  }
}

/* Prevent horizontal scroll */
html,
body {
  overflow-x: hidden;
}
