/* Shared rhythm and surfaces for the community modules. */
.header {
  height: 94px;
}
.desktop-nav {
  font-size: 13px;
}
.button-login {
  background: #edf5fb;
}
.daily-section {
  padding-top: 45px;
}
.section-heading h2 {
  font-size: 35px;
  letter-spacing: -1.3px;
  font-weight: 600;
}
.section-heading h2 em {
  font-family: Georgia, serif;
  color: #47789e;
  font-weight: 400;
}
.section-heading > p {
  font-size: 12px;
}
.flame-card {
  background: linear-gradient(125deg, #e0f1fc, #f2faff 78%);
  border-color: #cfe4f3;
  box-shadow: 0 8px 30px #5d8aaf0d;
}
.flame-message h3 {
  font-size: 29px;
}
.flame-message p {
  font-size: 12px;
}
.flame-number strong {
  font-size: 76px;
}
.flame-card .button-claim {
  font-size: 13px;
  min-height: 52px;
}
.flame-card .small-label {
  font-size: 10px;
}
.pulse-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: #f9fcff;
}
.pulse-card:before {
  content: '';
  position: absolute;
  width: 205px;
  height: 135px;
  right: 0;
  bottom: 0;
  background:
    linear-gradient(90deg, #f9fcff, #f9fcff66),
    url('/assets/cozy-friend.jpg') center / cover;
  z-index: -1;
  opacity: 0.55;
  pointer-events: none;
}
.pulse-card h3 {
  font-size: 29px;
}
.pulse-stats strong {
  font-size: 35px;
}
.pulse-note,
.pulse-link {
  font-size: 12px;
}
.milestone-line {
  margin-bottom: 0;
  padding: 25px 6px;
}
.community-bottom {
  padding-top: 30px;
  gap: 24px;
}
.leaderboard-card {
  background: #fbfdff;
}
.leaderboard-card h2 {
  font-size: 29px;
}
.leaderboard-list li {
  font-size: 13px;
  padding: 14px 0;
}
.leaderboard-empty h3 {
  font-size: 19px;
}
.leaderboard-empty p {
  font-size: 12px;
}
.member-card {
  background: linear-gradient(140deg, #dfedf9, #eff8fe 65%, #fff);
  border-color: #cee1f0;
}
.member-initial {
  background: #c5dfee;
}
.member-identity h2 {
  font-size: 22px;
}
.member-identity p,
.member-record,
.member-card label {
  font-size: 12px;
}
.member-note {
  font-size: 11px;
}
.faq {
  margin-block: 48px;
}
.faq h2 {
  font-size: 31px;
}
.faq summary,
.faq details p {
  font-size: 13px;
}
.footer {
  min-height: 92px;
}
@media (max-width: 850px) {
  .section-heading h2 {
    font-size: 29px;
  }
  .flame-message h3 {
    font-size: 24px;
  }
  .flame-card .button-claim {
    font-size: 11px;
  }
  .flame-number strong {
    font-size: 62px;
  }
}
@media (max-width: 700px) {
  body {
    padding-bottom: calc(84px + env(safe-area-inset-bottom, 0px));
  }
  .desktop-nav {
    display: flex;
    position: fixed;
    z-index: 30;
    bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    left: 16px;
    right: 16px;
    justify-content: space-around;
    gap: 0;
    padding: 5px 8px;
    border: 1px solid #d2e4f1;
    border-radius: 20px;
    background: #fffffff2;
    backdrop-filter: blur(16px);
    box-shadow: 0 8px 30px #233c5226;
    font-size: 12px;
  }
  .desktop-nav a {
    display: grid;
    place-items: center;
    min-height: 44px;
    padding: 10px 12px;
  }
  .text-link {
    min-height: 44px;
  }
  #the-space,
  #your-flame,
  #board {
    scroll-margin-top: 16px;
  }
  .header {
    height: 82px;
  }
  .daily-section {
    padding-top: 34px;
  }
  .section-heading h2 {
    font-size: 30px;
    max-width: 260px;
  }
  .section-heading h2 em {
    white-space: nowrap;
  }
  .flame-card .small-label {
    font-size: 9px;
  }
  .flame-message h3 {
    font-size: 23px;
  }
  .flame-message p {
    font-size: 11px;
  }
  .flame-number {
    min-width: 74px;
  }
  .flame-number strong {
    font-size: 57px;
  }
  .community-bottom {
    padding-top: 24px;
  }
  .leaderboard-card,
  .member-card {
    padding: 25px;
  }
  .leaderboard-card h2 {
    font-size: 27px;
  }
  .member-identity h2 {
    font-size: 21px;
  }
}
