/* Readable type scale for the finished v1 layout. */
body { font-size: 17px; }
.section-label { font-size: 14px; }
.kicker { font-size: 17px; }
.menu-button__label, .site-menu__eyebrow { font-size: 14px; }
.site-menu__primary a small { font-size: 13px; }
.site-menu__secondary a { font-size: 16px; }
.hero__eyebrow { font-size: clamp(17px, 1.5vw, 22px); }
.hero__lead { font-size: clamp(17px, 1.35vw, 20px); }
.hero__roadmap dt { font-size: 13px; }
.hero__roadmap dd { font-size: 16px; }
.hero__roadmap > div { position: relative; transition: background-color .2s; }
.hero__roadmap > div:hover { background: rgba(255, 253, 248, .28); }
.hero__roadmap dd a { display: inline-block; color: inherit; text-decoration: none; }
.hero__roadmap dd a::before { content: ""; position: absolute; inset: 0; cursor: pointer; }
.hero__roadmap dd a:focus-visible::before { outline: 3px solid var(--ink); outline-offset: -3px; }
.hero__roadmap dd a::after { content: "↗"; display: inline-block; margin-left: .35em; font-size: .8em; font-weight: 900; }
.hero__scroll { font-size: 12px; }
.breakout__photo-meta small { font-size: 11px; }
.breakout__photo-meta b { font-size: 13px; }
.breakout__photo-caption { font-size: 13px; }

.updates__heading p,
.profile__copy > p:not(.kicker),
.events--refresh .events__content > p:not(.kicker),
.future__copy,
.contact__heading > p:last-child { font-size: 18px; line-height: 1.8; }
.instagram-grid__tile { font-size: 13px; }
.updates__profile-link, .profile__more, .future__update-link { font-size: 16px; }
.updates__news-head span, .news-list__category { font-size: 13px; }
.news-list__item p { font-size: 16px; line-height: 1.55; }
.updates__note { font-size: 13px; line-height: 1.7; }
.profile__portrait small, .profile__figure figcaption { font-size: 13px; line-height: 1.55; }
.profile__copy h2 { line-height: 1.3; }
.profile__copy h2 ruby { ruby-position: over; }
.profile__copy h2 rt { font-family: var(--sans); font-size: clamp(12px, .28em, 18px); font-weight: 700; letter-spacing: .04em; line-height: 1.4; }
.profile-dialog__top p { font-size: 14px; }
.profile-dialog__body h3 { font-size: 22px; }
.profile-dialog__body p { font-size: 17px; line-height: 1.85; }

.event-articles__head span, .event-articles__planned > span,
.event-article__body small { font-size: 13px; }
.event-article__body > span { font-size: 15px; line-height: 1.55; }
.event-article__body em { font-size: 14px; }
.event-articles__note { font-size: 13px; line-height: 1.6; }
.event-articles__planned strong { font-size: 19px; }
.event-articles__planned small { font-size: 14px; }
.round-link { font-size: 15px; }

.faq summary { font-size: 18px; }
.faq summary > span { font-size: 14px; }
.faq details > div p { font-size: 17px; line-height: 1.75; }
.contact__heading > p:first-child { font-size: 14px; }
.contact-options__dm > span:first-child,
.contact-options__details summary > span { font-size: 14px; }
.contact-options__dm strong, .contact-options__details summary strong { font-size: 21px; line-height: 1.4; }
.contact-options__dm small { font-size: 14px; line-height: 1.6; }
.contact-options__action { font-size: 14px; }
.rice-dialog__body p { font-size: 17px; }
.rice-dialog__links a { font-size: 15px; }

.rice-teaser { width: 92px; height: 92px; font-size: 12px; }
.rice-teaser__bag { width: 32px; height: 33px; font-size: 16px; }
.page-top { width: 76px; height: 44px; }
.page-top small { font-size: 13px; }
.site-footer nav a { font-size: 16px; }
.site-footer__bottom { font-size: 13px; }
.site-footer__bottom a { width: 82px; font-size: 12px; }

@media (max-width: 767px) {
  body { font-size: 16px; }
  .section-label { font-size: 13px; }
  .kicker { font-size: 16px; }
  .menu-button__label { font-size: 13px; }
  .site-menu__primary a small { font-size: 12px; }
  .site-menu__secondary a { font-size: 15px; }
  .hero__eyebrow { font-size: 15px; }
  .hero__lead { font-size: 17px; }
  .hero__roadmap dt { font-size: 12px; }
  .hero--refresh .hero__roadmap dd { font-size: 14px; }
  .hero__scroll { font-size: 11px; }
  .breakout__photo-meta { min-width: 59px; }
  .breakout__photo-meta small { font-size: 10px; }
  .breakout__photo-meta b { font-size: 11px; }
  .breakout__photo-caption { font-size: 12px; }
  .updates__heading p,
  .profile__copy > p:not(.kicker),
  .events--refresh .events__content > p:not(.kicker),
  .future__copy,
  .contact__heading > p:last-child { font-size: 16px; }
  .updates__profile-link, .profile__more, .future__update-link { font-size: 15px; }
  .news-list__item p { font-size: 15px; }
  .profile__portrait small, .profile__figure figcaption { font-size: 13px; }
  .profile-dialog__body h3 { font-size: 20px; }
  .profile-dialog__body p { font-size: 16px; }
  .event-article__body strong { font-size: 18px; }
  .event-article__body > span { display: block; font-size: 14px; }
  .event-article__body em { font-size: 13px; }
  .faq summary { font-size: 16px; }
  .faq details > div p { font-size: 16px; }
  .contact-options__dm strong, .contact-options__details summary strong { font-size: 19px; }
  .rice-teaser { width: 84px; height: 84px; font-size: 12px; }
  .rice-teaser__bag { width: 28px; height: 29px; font-size: 14px; }
  .site-footer nav a { font-size: 15px; }
}

@media (max-width: 380px) {
  .event-article { grid-template-columns: 31% minmax(0,1fr); gap: 12px; }
  .event-article__body strong { font-size: 17px; }
  .event-article__body > span { font-size: 13px; }
}
