/* rubik-arabic-wght-normal */
@font-face {
  font-family: 'Rubik Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url(/fonts/rubik-arabic-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;
}

/* rubik-cyrillic-ext-wght-normal */
@font-face {
  font-family: 'Rubik Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url(/fonts/rubik-cyrillic-ext-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* rubik-cyrillic-wght-normal */
@font-face {
  font-family: 'Rubik Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url(/fonts/rubik-cyrillic-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* rubik-hebrew-wght-normal */
@font-face {
  font-family: 'Rubik Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url(/fonts/rubik-hebrew-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0307-0308,U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F;
}

/* rubik-latin-ext-wght-normal */
@font-face {
  font-family: 'Rubik Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url(/fonts/rubik-latin-ext-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* rubik-latin-wght-normal */
@font-face {
  font-family: 'Rubik Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 300 900;
  src: url(/fonts/rubik-latin-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* inter-cyrillic-ext-wght-normal */
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(/fonts/inter-cyrillic-ext-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F;
}

/* inter-cyrillic-wght-normal */
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(/fonts/inter-cyrillic-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;
}

/* inter-greek-ext-wght-normal */
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(/fonts/inter-greek-ext-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+1F00-1FFF;
}

/* inter-greek-wght-normal */
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(/fonts/inter-greek-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF;
}

/* inter-vietnamese-wght-normal */
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(/fonts/inter-vietnamese-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB;
}

/* inter-latin-ext-wght-normal */
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(/fonts/inter-latin-ext-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* inter-latin-wght-normal */
@font-face {
  font-family: 'Inter Variable';
  font-style: normal;
  font-display: swap;
  font-weight: 100 900;
  src: url(/fonts/inter-latin-wght-normal.woff2) format('woff2-variations');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
/* All of the site's CSS, in one file. Order:
     1. Tokens and base styles
     2. Shared components (buttons, forms, header, footer, photos, ...)
     3. Page sections (home, Meet Dakota, Priorities, Volunteer, Thank-you)

   Breakpoints (media queries can't use variables, so they're repeated):
     48rem  nav collapses, footer and donate bar change, signup form goes wide
     56rem  two-column grids on home and Meet Dakota */

:root {
  --burnt-orange: RGB(237, 93, 0);
  --orange: RGB(255, 152, 0);
  --cream: RGB(255, 251, 208);
  --dark-green: RGB(9, 48, 37);
  --green: RGB(0, 84, 68);
  /*--olive: RGB(31, 58, 6);*/
  --white: RGB(255, 255, 255);
  --black: RGB(0, 0, 0);

  /* Type */
  --font-display: "Rubik Variable", "Rubik", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-body: "Inter Variable", "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;

  /* Layout */
  --max-width: 72rem;
  --gutter: clamp(1rem, 4vw, 2rem);
  --section-space: clamp(3rem, 8vw, 6rem);
  --radius: 4px;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  background: var(--cream);
  color: var(--green);
  font-family: var(--font-body);
  font-size: 1.0625rem;
  line-height: 1.6;
}

img,
video,
iframe {
  max-width: 100%;
  display: block;
}

/* Rubik is a variable font, so any weight from 300 to 900 works. */
h1,
h2,
h3 {
  font-family: var(--font-display);
  font-weight: 800;
  line-height: 1.05;
  text-transform: uppercase;
  letter-spacing: 0.01em;
  margin: 0 0 0.5em;
  text-wrap: balance;
}

h1 {
  font-size: clamp(2.5rem, 7vw, 4.75rem);
}

h2 {
  font-size: clamp(2rem, 5vw, 3.25rem);
}

h3 {
  font-size: clamp(1.5rem, 3vw, 2rem);
}

p {
  margin: 0 0 1em;
  max-width: 65ch;
}

a {
  color: inherit;
  text-decoration-color: var(--burnt-orange);
  text-underline-offset: 0.2em;
}

:focus-visible {
  outline: 3px solid var(--burnt-orange);
  outline-offset: 2px;
}

.container {
  width: 100%;
  max-width: var(--max-width);
  margin-inline: auto;
  padding-inline: var(--gutter);
}

.section {
  padding-block: var(--section-space);
}

.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  padding: 0.75em 1.5em;
  border: 2px solid transparent;
  border-radius: var(--radius);
  font-family: var(--font-body);
  font-weight: 800;
  font-size: 0.95rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}

.btn-donate {
  background: var(--burnt-orange);
  color: var(--white);
}

.btn-donate:hover {
  background: var(--orange);
}

.btn-primary {
  background: var(--green);
  color: var(--white);
}

.btn-primary:hover {
  background: var(--dark-green);
}

.btn-outline {
  border-color: currentColor;
  background: transparent;
}

.btn-outline:hover {
  background: var(--cream);
  color: var(--green);
  border-color: var(--cream);
}

/* Forms (also used to style Action Network embeds once they're added) */
.form-grid {
  display: grid;
  gap: 1rem;
}

.form-grid label {
  display: grid;
  gap: 0.35rem;
  font-weight: 600;
  font-size: 0.95rem;
}

.form-grid input[type="text"],
.form-grid input[type="email"],
.form-grid input[type="tel"],
.form-grid textarea {
  width: 100%;
  padding: 0.75rem 0.9rem;
  border: 2px solid var(--green);
  border-radius: var(--radius);
  background: var(--white);
  color: var(--green);
  font: inherit;
}

/* ==========================================================================
   Shared components. Everything is global, so each class name is unique to
   one component (or prefixed with it).
   ========================================================================== */

/* Skip link */
.skip-link {
  position: absolute;
  left: 1rem;
  top: -4rem;
  z-index: 100;
  padding: 0.5rem 1rem;
  background: var(--orange);
  color: var(--green);
  font-weight: 700;
}

.skip-link:focus {
  top: 1rem;
}

/* Layout helpers */
.narrow {
  max-width: 44rem;
}

.narrow-sm {
  max-width: 40rem;
}

.lede {
  font-size: 1.2rem;
}

.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

/* Header */
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--green);
  color: var(--cream);
}

.header-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  min-height: 4.5rem;
}

.logo {
  display: flex;
  flex-direction: column;
  line-height: 1;
  text-decoration: none;
}

/* Change the height to resize the logo; the width follows to keep its proportions. */
.logo img {
  height: 72px;
  width: auto;
}

.nav {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

.nav ul {
  display: flex;
  gap: 1.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.nav ul a {
  font-weight: 700;
  font-size: 0.9rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  text-decoration: none;
}

.nav ul a:hover,
.nav ul a[aria-current="page"] {
  color: var(--orange);
}

.menu-toggle {
  display: none;
  width: 2.75rem;
  height: 2.75rem;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}

.bars,
.bars::before,
.bars::after {
  display: block;
  width: 1.5rem;
  height: 2px;
  margin-inline: auto;
  background: currentColor;
  position: relative;
}

.bars::before,
.bars::after {
  content: "";
  position: absolute;
}

.bars::before {
  top: -7px;
}

.bars::after {
  top: 7px;
}

@media (max-width: 48rem) {
  .menu-toggle {
    display: block;
  }

  .nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    flex-direction: column;
    align-items: stretch;
    padding: 1rem var(--gutter) 1.5rem;
    background: var(--green);
    border-top: 1px solid var(--dark-green);
  }

  .nav.open {
    display: flex;
  }

  .nav ul {
    flex-direction: column;
    gap: 0;
  }

  .nav ul a {
    display: block;
    padding: 0.75rem 0;
    font-size: 1rem;
  }
}

/* Footer. The extra bottom padding clears the mobile donate bar. */
.site-footer {
  background: var(--green);
  color: var(--cream);
  padding-block: 3rem 6rem;
  font-size: 0.95rem;
}

@media (min-width: 48rem) {
  .site-footer {
    padding-bottom: 2rem;
  }
}

.footer-grid {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  margin-bottom: 2rem;
}

/* Change the height to resize the footer logo. */
.footer-logo {
  height: 56px;
  width: auto;
  margin-bottom: 0.75rem;
}

.site-footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-footer .links li+li {
  margin-top: 0.4rem;
}

.site-footer .social {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

.paid-for {
  display: inline-block;
  border: 1px solid var(--cream);
  padding: 0.5rem 0.9rem;
  margin-bottom: 1rem;
  font-size: 0.85rem;
}

.copyright {
  font-size: 0.8rem;
  opacity: 0.8;
  margin: 0;
}

/* Mobile donate bar */
.sticky-donate {
  position: fixed;
  inset: auto 0 0 0;
  z-index: 40;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem;
  padding: 0.6rem var(--gutter) calc(0.6rem + env(safe-area-inset-bottom));
  background: var(--green);
  color: var(--cream);
  box-shadow: 0 -2px 12px rgb(0 0 0 / 0.2);
}

@media (min-width: 48rem) {
  .sticky-donate {
    display: none;
  }
}

/* Donate amount buttons */
.donate-buttons {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(7rem, 1fr));
  gap: 0.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.donate-buttons .btn {
  width: 100%;
  font-size: 1.1rem;
  padding-block: 0.9em;
}

/* Photos */
.photo {
  width: 100%;
  object-fit: cover;
  border-radius: var(--radius);
}

.placeholder {
  display: grid;
  place-items: center;
  padding: 1rem;
  background: repeating-linear-gradient(-45deg,
      var(--dark-green) 14px 28px,
      var(--green) 28px 42px);
  color: var(--cream);
  font-weight: 700;
  font-size: 0.9rem;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

/* Rich text from Sanity */
.rich-text p {
  font-size: 1.125rem;
}

.rich-text h2,
.rich-text h3 {
  margin-top: 1.5em;
}

/* Signup band and email form */
.signup-band {
  background: var(--cream);
  color: var(--green);
}

.signup-band .btn-donate {
  background: var(--green);
  color: var(--white);
}

.signup-band .btn-donate:hover {
  background: var(--dark-green);
}

.form-grid.compact {
  align-items: end;
}

/* Match the inputs' height so the button lines up with them. */
.form-grid.compact .btn {
  line-height: 1.6;
  padding-block: 0.8em;
}

@media (min-width: 48rem) {
  .form-grid.compact {
    grid-template-columns: 1fr 1fr 1.4fr auto;
  }

  .form-grid.compact .fine-print {
    grid-column: 1 / -1;
  }
}

.fine-print {
  font-size: 0.85rem;
  margin: 0;
}

/* ==========================================================================
   Page sections
   ========================================================================== */

/* Home: hero */
.hero {
  position: relative;
  display: grid;
  align-items: end;
  min-height: min(80vh, 44rem);
  color: var(--white);
  overflow: hidden;
}

/* place-items tucks the placeholder label out of the way. */
.hero .hero-bg {
  position: absolute;
  inset: 0;
  height: 100%;
  border-radius: 0;
  place-items: start end;
}

.hero .overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgb(9 48 37 / 0.92) 0%, rgb(9 48 37 / 0.55) 45%, rgb(9 48 37 / 0.1) 100%);
}

.hero .content {
  position: relative;
  padding-block: 4rem clamp(3rem, 8vw, 5rem);
}

.hero h1 {
  max-width: 16ch;
}

.hero .tagline {
  font-size: clamp(1.15rem, 2.5vw, 1.5rem);
  font-weight: 700;
  margin-bottom: 1.75rem;
}

/* Home: donate strip */
.donate-strip {
  background: var(--green);
  color: var(--cream);
  padding-block: clamp(2.5rem, 6vw, 4rem);
  border-top: 6px solid var(--orange);
}

.donate-strip .inner {
  max-width: 52rem;
  text-align: center;
}

.donate-strip h2 {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  margin-bottom: 1.5rem;
}

.donate-strip .btn-donate {
  background: var(--white);
  color: var(--green);
}

.donate-strip .btn-donate:hover {
  background: var(--burnt-orange);
  color: var(--white);
}


/* Two-column grids: home intro, home meet teaser, Meet Dakota bio */
.intro-grid,
.meet-grid,
.bio-grid {
  display: grid;
  gap: clamp(2rem, 5vw, 4rem);
}

.intro-grid,
.meet-grid {
  align-items: center;
}

.bio-grid {
  align-items: start;
}

@media (min-width: 56rem) {
  .intro-grid {
    grid-template-columns: 1fr 1fr;
  }

  .meet-grid {
    grid-template-columns: 0.8fr 1.2fr;
  }

  .bio-grid {
    grid-template-columns: 1.3fr 0.7fr;
  }
}

/* Home: meet teaser */
.meet {
  /*background:
    radial-gradient(rgb(255 152 0 / 0.15) 20%, transparent 20%) 0 0 / 16px 16px,
    var(--white);*/

  /*background:
    repeating-linear-gradient(45deg,
      var(--cream) 0px 4px,
      transparent 4px 8px),
    repeating-linear-gradient(-45deg,
      var(--cream) 0px 4px,
      var(--white) 4px 8px);*/
  background: var(--white);
  color: var(--black);
}

.meet-grid .photo {
  max-width: 26rem;
}

.meet .btn-primary:hover {
  background: var(--dark-green);
}

/* Home: priority bars */
.priorities {
  background: var(--green);
  color: var(--white);
}

.priority-bars {
  display: grid;
  gap: 0.75rem;
  max-width: 48rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.priority-bar {
  display: block;
  padding: 1.25rem 1.5rem;
  border-radius: var(--radius);
  background: var(--dark-green);
  box-shadow: 0 4px 12px rgb(0 0 0 / 0.18);
  text-decoration: none;
  transition: background-color 0.2s;
}

.priority-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.priority-title {
  font-family: var(--font-display);
  font-size: clamp(1.5rem, 3vw, 2rem);
  line-height: 1.1;
  text-transform: uppercase;
  font-weight: 700;
}

.chevron {
  flex: none;
  width: 0.8rem;
  height: 0.8rem;
  border-top: 3px solid currentColor;
  border-right: 3px solid currentColor;
  transform: rotate(45deg);
  transition:
    transform 0.2s,
    color 0.2s;
}

/* The paragraph slides open on hover or keyboard focus. */
.priority-reveal {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.25s ease;
}

.priority-summary {
  overflow: hidden;
  padding-top: 0;
  opacity: 0;
  transition:
    opacity 0.2s,
    padding-top 0.25s;
  /* Black stays readable on the orange hover color. It's hidden until hover on
     desktop, so it never shows on the dark bar. */
  color: var(--white);
  font-weight: 500;
}

.priority-bar:hover,
.priority-bar:focus-visible {
  background: var(--burnt-orange);
}

.priority-bar:hover .priority-reveal,
.priority-bar:focus-visible .priority-reveal {
  grid-template-rows: 1fr;
}

.priority-bar:hover .priority-summary,
.priority-bar:focus-visible .priority-summary {
  opacity: 1;
  padding-top: 0.75rem;
  color: var(--white);
}

.priority-bar:hover .chevron,
.priority-bar:focus-visible .chevron {
  transform: rotate(135deg);
}

/* Touch screens can't hover, so always show the paragraph there and keep the
   chevron from rotating on tap. */
@media (hover: none) {
  .priority-reveal {
    grid-template-rows: 1fr;
  }

  .priority-summary {
    opacity: 1;
    padding-top: 0.75rem;
    color: var(--white);
  }

  .priority-bar:hover .chevron,
  .priority-bar:focus-visible .chevron {
    transform: rotate(45deg);
  }
}

@media (prefers-reduced-motion: reduce) {

  .priority-bar,
  .priority-reveal,
  .priority-summary,
  .chevron {
    transition: none;
  }
}

/* Striped banner at the top of the Meet Dakota and Priorities pages */
.page-banner {
  height: clamp(8rem, 20vw, 13rem);
  background: repeating-linear-gradient(-45deg,
      var(--dark-green) 14px 28px,
      var(--green) 28px 42px);
}

/* Meet Dakota page */
.bio-page,
.priorities-intro,
.priority:not(.alt) {
  background: var(--white);
}

.bio-grid video {
  width: 100%;
  border-radius: var(--radius);
}

/* Volunteer page */
.form-row {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
}

.volunteer-form fieldset {
  border: 2px solid var(--green);
  border-radius: var(--radius);
  padding: 1rem;
  margin: 0;
}

.volunteer-form legend {
  font-weight: 700;
  padding-inline: 0.25rem;
}

.volunteer-form .check {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-weight: 400;
  padding-block: 0.25rem;
}

.volunteer-form .check input {
  width: 1.15rem;
  height: 1.15rem;
  accent-color: var(--burnt-orange);
}

.volunteer-form button {
  justify-self: start;
}

/* Priorities page. scroll-margin-top clears the sticky header. */
.priorities-intro {
  padding-bottom: 2rem;
}

.priority {
  scroll-margin-top: 4.5rem;
}

.priority h2 {
  color: var(--burnt-orange);
}

.priority.alt {
  background: var(--green);
  color: var(--cream);
}

.priority.alt h2 {
  color: var(--orange);
}

.priorities-intro+.priority {
  padding-top: 0;
}

/* Thank-you page */
.thanks-lede {
  margin-bottom: 1.5rem;
}

/* Airtable volunteer form: tall enough that it never scrolls inside the frame
   (the form is ~910px on desktop, ~960px on phones, plus room for error text). */
.airtable-embed {
  display: block;
  width: 100%;
  height: 980px;
  border: 0;
  background: transparent;
  overflow: hidden;
}

@media (max-width: 600px) {
  .airtable-embed {
    height: 1060px;
  }
}
