@import 'dsdl/dsdl.css';
@import 'variables.css';
@import 'clipped-containers.css';
@import 'footnotes.css';
@import 'nav-pills.css';
@import 'navbar.css';
@import 'print.css';


.background-calitp-blue {
  background-color: var(--calitp-brand-blue);
}

.background-purple-70 {
  background-color: var(--dsdl-purple-70);
}

.background-yellow-30 {
  background-color: var(--dsdl-yellow-30);
}

.border-purple-70 {
  border-color: var(--dsdl-purple-70);
}

.border-yellow-30 {
  border-color: var(--dsdl-yellow-30);
}

.min-w-0 {
  min-width: 0;
}

.btn {
  --bs-btn-border-width: 2px;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4 {
  font-family: var(--calitp-headline-sans-serif);
}

h1,
.h1 {
  font-size: calc(40rem / 16);
  font-weight: var(--calitp-font-weight-bold);
  margin-bottom: 19px;
}

h2,
.h2 {
  font-size: 2rem;
}

h3,
.h3 {
  font-size: calc(24rem / 16);
}

h4,
.h4 {
  font-weight: var(--calitp-font-weight-bold);
  line-height: var(--bs-body-line-height);
}

.display-heading {
  font-family: var(--calitp-headline-sans-serif);
}

p,
a,
li {
  font-size: 1rem;
}

hr {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

.small-caps {
  text-transform: uppercase;
  line-height: var(--bs-body-line-height);
  letter-spacing: 0.025em;
  display: inline-block;
  padding: 0.35rem 1rem;
  font-size: 0.75rem;
  font-family: var(--bs-font-sans-serif);
  border: 1.5px solid var(--bs-white);
  background-color: rgba(38, 38, 38, 0.2);  /* gray 80 at 20% opacity */
}

.fs-7 {
  font-size: calc(14rem / 16);
}

.fs-stats {
  font-size: calc(64rem / 16);
  font-family: var(--calitp-headline-sans-serif);
}

.font-poppins {
  font-family: var(--bs-font-sans-serif);
}

a {
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 1px;
  text-decoration-thickness: 2px;
}

a:hover {
  text-decoration-style: dotted;
}

figure.quote {
  border-left-width: 3px;
  border-left-style: solid;
  padding-left: 2rem;
}

figure.quote figcaption {
  font-size: calc(16rem / 16);
  font-style: italic;
}

footer a:hover {
  color: var(--dsdl-gray-30) !important;
}

.mb-28 {
  margin-bottom: 28px;
}

@media (min-width: 992px) {
  .fs-0 {
    font-size: calc(64rem / 16);
    font-family: var(--calitp-headline-sans-serif);
  }

  .h1-md {
    font-size: calc(40rem / 16);
  }

  figure.quote blockquote {
    font-size: calc(24rem / 16);
  }

  small,
  .small {
    font-size: calc(12rem / 16) !important;
  }
}

@media (max-width: 992px) {
  .fs-0 {
    font-size: calc(40rem / 16);
    font-family: var(--calitp-headline-sans-serif);
  }

  figure.quote blockquote {
    font-size: calc(20rem / 16);
  }

  small,
  .small {
    font-size: calc(10rem / 16) !important;
  }
}

@media (min-width: 768px) {
  .mb-md-40 {
    margin-bottom: 40px;
  }
}
