:root {
  --sail-ink: #10103f;
  --sail-primary: #191970;
  --sail-secondary: #ff7f50;
  --sail-foam: #f4f3fb;
  --sail-sand: #fff4ef;
}

html { scroll-behavior: smooth; }

body {
  color: var(--sail-ink);
  background:
    linear-gradient(rgba(25, 25, 112, .025) 1px, transparent 1px),
    #fffdfa;
  background-size: 100% 4rem;
}

.getting-started-page > header {
  background: rgba(255, 253, 250, .94) !important;
  backdrop-filter: blur(12px);
  box-shadow: 0 .5rem 2rem rgba(25, 25, 112, .06);
}

.getting-started-page > header .fw-semibold,
.home-site-footer .fw-semibold {
  color: var(--sail-primary) !important;
  font-size: 1.1rem;
}

.btn-primary {
  --bs-btn-bg: var(--sail-primary);
  --bs-btn-border-color: var(--sail-primary);
  --bs-btn-hover-bg: #10103f;
  --bs-btn-hover-border-color: #10103f;
  --bs-btn-active-bg: #10103f;
  --bs-btn-active-border-color: #10103f;
}

.btn-outline-primary {
  --bs-btn-color: var(--sail-primary);
  --bs-btn-border-color: var(--sail-primary);
  --bs-btn-hover-bg: var(--sail-primary);
  --bs-btn-hover-border-color: var(--sail-primary);
}

.text-bg-primary { background-color: var(--sail-primary) !important; }
.text-primary { color: var(--sail-primary) !important; }

main > section:first-child {
  position: relative;
  overflow: hidden;
  padding: clamp(2rem, 6vw, 5rem);
  border: 1px solid rgba(25, 25, 112, .08);
  border-radius: 2rem;
  background:
    radial-gradient(circle at 90% 12%, rgba(255, 127, 80, .2), transparent 22rem),
    linear-gradient(145deg, #fff, var(--sail-foam));
  box-shadow: 0 1.5rem 4rem rgba(25, 25, 112, .08);
}

main > section:not(:first-child) {
  scroll-margin-top: 7rem;
  padding-top: 2rem;
}

.display-5 {
  max-width: 15ch;
  color: var(--sail-primary);
  font-weight: 800 !important;
  letter-spacing: -.05em;
  line-height: .98;
}

.getting-started-page__need-card {
  position: relative;
  overflow: hidden;
  padding: 1.75rem;
  border: 1px solid rgba(25, 25, 112, .09);
  border-radius: 1.35rem;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 1rem 3rem rgba(25, 25, 112, .08);
}

.getting-started-page__need-card::before {
  position: absolute;
  inset: 0 0 auto;
  height: .3rem;
  background: linear-gradient(90deg, var(--sail-primary), var(--sail-secondary));
  content: "";
}

.getting-started-page__need-card li + li { margin-top: .5rem; }

.icon-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  gap: .75rem;
  padding: 0;
  list-style: none;
}

.icon-list li {
  padding: .85rem 1rem;
  border: 1px solid rgba(25, 25, 112, .08);
  border-radius: .85rem;
  background: #fff;
}

.icon-list li::before {
  margin-right: .6rem;
  color: var(--sail-secondary);
  content: "✓";
  font-weight: 800;
}

.getting-started-page__sections .row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 1rem;
  margin: 0;
}

.getting-started-page__sections article {
  height: 100%;
  padding: 1.5rem;
  border: 1px solid rgba(25, 25, 112, .09);
  border-top: .3rem solid var(--sail-secondary);
  border-radius: 1.25rem;
  background: linear-gradient(145deg, #fff, var(--sail-foam));
  box-shadow: 0 .85rem 2.5rem rgba(25, 25, 112, .07);
  transition: transform .2s ease, box-shadow .2s ease;
}

.getting-started-page__sections article:hover,
.getting-started-page__sections article:focus {
  transform: translateY(-.25rem);
  box-shadow: 0 1.25rem 3rem rgba(25, 25, 112, .12);
  outline: none;
}

.getting-started-card-icon {
  margin-right: .65rem;
  color: var(--sail-primary);
  font-size: 1.15rem;
}

.alert-primary {
  --bs-alert-color: var(--sail-primary);
  --bs-alert-bg: var(--sail-foam);
  --bs-alert-border-color: rgba(25, 25, 112, .16);
  border-left: .35rem solid var(--sail-secondary);
}

.home-site-footer {
  background:
    radial-gradient(circle at 85% 0%, rgba(255, 127, 80, .14), transparent 18rem),
    var(--sail-sand) !important;
}

@media (max-width: 767.98px) {
  main > section:first-child {
    padding: 2rem 1.25rem;
    border-radius: 1.25rem;
  }

  .getting-started-page__need-card { padding: 1.35rem; }
}
