/* app/assets/stylesheets/reset.css */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-family: inherit;
  vertical-align: baseline;
}
ol,
ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote::before,
blockquote::after,
q::before,
q::after {
  content: "";
  content: none;
}

/* app/assets/stylesheets/variables.css */
:root {
  --color--off-white: #dde9f6;
  --color--white: #dde8e8;
  --color--gray-700: #9ba2a2;
  --color--gray-300: #424646;
  --color--gray-100: #181b1e;
  --color--black: #0f1418;
  --color--text: var(--color--black);
  --color--text-less: var(--color--gray-300);
  --color--background: var(--color--off-white);
  --color--red: #ff5757;
  --color--orange: #ff914d;
  --color--yellow: #ffd21f;
  --color--green: #31edae;
  --color--light-blue: #62a3f6;
  --color--blue: #5271ff;
  --color--purple: #bc3fde;
  --secondary-text: #536471;
  --padding-sm: 0.8rem;
  --grid--min-size: 240px;
  --space--large: 3rem;
  --space--base: 1rem;
  --max-inline-size: 800px;
  --min-inline-size: calc( calc(var(--max-inline-size) - calc(var(--space--base) * 3)) / 3 );
  --size--button-shadow: 0.3em;
}

/* app/assets/stylesheets/base.css */
*,
*::before,
*::after {
  box-sizing: border-box;
}
html,
body {
  min-height: 100dvh;
}
body {
  background-color: var(--color--background);
  color: var(--color--text);
  display: grid;
  grid-template-columns: [left-pad] 1fr [main] auto [right-pad] 1fr;
  grid-template-rows: [header] auto [main] 1fr [footer] auto;
  justify-content: center;
  font-family:
    system-ui,
    "Segoe UI",
    Roboto,
    sans-serif;
  font-weight: 330;
  font-size: 1.2rem;
  line-height: 1.4;
}
body > header {
  align-items: center;
  display: flex;
  flex-direction: column;
  grid-column: 1 / -1;
  margin-block-end: var(--space--large);
  text-align: center;
}
h1 {
  margin-block: var(--space--large);
}
h2 {
  letter-spacing: 0.1em;
  font-size: 1.6rem;
  font-weight: 600;
  margin-block-start: var(--space--large);
  margin-block-end: var(--space--large);
  text-transform: uppercase;
}
header h3 {
  text-transform: unset;
}
h3 {
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  margin-block-end: var(--space--base);
  text-transform: uppercase;
}
h3 em {
  font-weight: 600;
}
img {
  width: 100%;
  height: auto;
  display: block;
}
a {
  color: var(--color--blue);
}
a:visited {
  color: var(--color--purple);
}
strong {
  font-weight: 700;
}
main {
  display: grid;
  grid-column: main;
  grid-template-columns: 1fr min(var(--max-inline-size), 100%) 1fr;
  gap: var(--space--large) 0;
}
main > * {
  grid-column: 2;
  padding-inline: var(--space--base);
}
.full-bleed {
  width: 100%;
  grid-column: 1 / 4;
}
.lots-of-text {
  display: flex;
  flex-direction: column;
  gap: var(--space--base);
}
footer {
  color: var(--color--text-less);
  grid-column: 1 / -1;
  margin-block-start: var(--space--large);
  padding-block-end: var(--space--large);
  padding-inline: var(--space--base);
  text-align: center;
}

/* app/assets/stylesheets/home.css */
header:has(.hero) {
  padding: 0;
}
.hero {
  aspect-ratio: 800 / 450;
  background-image: url("/assets/hero-vertical-3NYL5JVK.digested.jpg");
  background-size: cover;
  inline-size: 100%;
}
.hero h1 {
  font-size: 0;
}
@media all and (min-width: 800px) {
  .hero {
    aspect-ratio: 3264 / 576;
    background-image: url("/assets/hero-NACIPGDR.digested.jpg");
  }
}
.wrapper {
  max-inline-size: var(--max-inline-size);
  padding-inline: var(--space--base);
}
.rainbow {
  background:
    linear-gradient(
      to right,
      var(--color--red) calc(100% * (1 / 7)),
      var(--color--orange) calc(100% * (1 / 7)) calc(100% * (2 / 7)),
      var(--color--yellow) calc(100% * (2 / 7)) calc(100% * (3 / 7)),
      var(--color--green) calc(100% * (3 / 7)) calc(100% * (4 / 7)),
      var(--color--light-blue) calc(100% * (4 / 7)) calc(100% * (5 / 7)),
      var(--color--blue) calc(100% * (5 / 7)) calc(100% * (6 / 7)),
      var(--color--purple) calc(100% * (6 / 7)));
  border-block-start: 1px solid rgb(0 0 0 / 30%);
  height: 20px;
  width: 100%;
}
.press-strip {
  border-block-end: 1px solid var(--color--gray-700);
  border-block-start: 1px solid var(--color--gray-700);
  padding-block-end: var(--space--base);
}
.press-strip ol {
  list-style: none;
  margin: 0;
  padding: 0;
}
.carousel {
  mask-image:
    linear-gradient(
      to left,
      transparent,
      transparent 5%,
      black 25%,
      black 75%,
      transparent 95%,
      transparent);
  overflow: hidden;
  touch-action: pan-y pinch-zoom;
}
.carousel__nav {
  justify-content: end;
  display: flex;
  gap: var(--space--base);
  inset-block-end: var(--space--base);
  position: relative;
}
.carousel__nav button {
  display: block;
  background: var(--color--background);
  border: 1px solid var(--color--gray-700);
  padding: 0;
  height: 44px;
  width: 44px;
  top: -50%;
}
.carousel__items {
  align-items: start;
  display: flex;
  padding-inline-end: var(--space--large);
  touch-action: pan-y pinch-zoom;
}
.carousel__item {
  align-items: center;
  display: flex;
  flex-direction: column;
  flex: 1 0 50%;
  gap: var(--space--base);
  padding: 2vw;
}
.carousel__item > img {
  flex: 0 1 30px;
  min-height: 0;
  max-width: 100%;
  width: auto;
}
.carousel__item blockquote {
  font-size: 1rem;
  max-width: var(--max-inline-size);
}
.cta {
  display: grid;
  gap: var(--space--base);
  grid-template-columns: repeat(auto-fit, minmax(var(--grid--min-size), 1fr));
}
.cta__action {
  display: grid;
  gap: var(--space--base);
  grid-template-rows: 1fr auto;
  grid-auto-flow: row;
  justify-content: stretch;
}
.cta__action-link {
  background-color: var(--bg-color);
  border: 3px solid var(--color--gray-100);
  box-shadow: calc(var(--size--button-shadow) * -1) var(--size--button-shadow) 0 0 var(--bg-color);
  color: var(--color--text);
  font-weight: bold;
  text-decoration: none;
  padding: var(--space--base);
  text-align: center;
  transition: box-shadow 0.2s;
}
.cta__action-link:hover {
  box-shadow: 0 0 0 0 var(--bg-color);
}
.cta__action-link:visited {
  color: currentColor;
}
.cta__wefunder {
  --bg-color: var(--color--light-blue);
}
.cta__donate {
  --bg-color: var(--color--green);
}
.mission {
  border-block-end: 1px solid var(--color--gray-700);
  border-block-start: 1px solid var(--color--gray-700);
  padding-block: var(--space--large);
}
.why-this-matters {
}

/* app/assets/stylesheets/about.css */
.our-team,
.advisors {
  grid-template-columns: 1fr;
}
.image-grid,
.image-grid {
  display: grid;
  gap: var(--space--large) var(--space--base);
  grid-template-columns: repeat(auto-fit, minmax(var(--grid--min-size), 1fr));
}
.person {
  display: grid;
  gap: var(--space--base);
}
.person figcaption {
  display: grid;
  grid-auto-flow: row;
}
.person__name {
  font-weight: bold;
}
.person__title {
  color: var(--color--text-less);
}
.institutional-partners p:not(:last-of-type) {
  margin-block-end: var(--space--base);
}

/* app/assets/stylesheets/press.css */
.press {
  display: flex;
  flex-direction: column;
  gap: var(--space--base);
  margin-block-start: var(--space--large);
}
.press__item {
  display: flex;
  flex-direction: column;
}
.press__logo {
  display: block;
  margin-block-end: var(--space--large);
}
.press__content {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  grid-template-rows: [content] auto [attribution] auto;
  gap: var(--space--base);
}
.press__quote {
  flex-basis: 40%;
  flex-grow: 0;
  margin-block-end: var(--space--base);
}
.press__attribution {
  align-self: end;
  font-style: oblique;
  grid-column: span 2;
}
.press-links {
  display: grid;
  gap: var(--space--base);
  grid-template-columns: repeat(auto-fit, minmax(var(--min-inline-size), 1fr));
}

/* app/assets/stylesheets/application.css */
/*# sourceMappingURL=/assets/application-76b91085.css.map */
