:root {
  --font-title: 1.5rem;
  --font-subtitle: 1rem;
  --font-body: 0.875rem;
  --font-info: 0.75rem;
  --line-height-title: 1.3;
  --line-height-body: 1.5;
}

body {
  font-family: "Inter", sans-serif;
  font-size: var(--font-body);
  line-height: var(--line-height-body);
}

button,
input,
select,
textarea {
  font-family: inherit;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
.page-title,
.page-header .page-title,
.modal-title,
.title,
.card-title,
.section-title,
.main-title {
  font-family: "Inter", sans-serif;
}

.dropdown .dropdown-menu,
.fc-day-grid-event .fc-time,
.fc-basic-view td.fc-week-number span,
.fc-basic-view td.fc-day-number {
  font-family: "Inter", sans-serif;
}

h1,
h2,
.page-title,
.page-header .page-title,
.modal-title,
.title {
  font-size: var(--font-title);
  line-height: var(--line-height-title);
}

h3,
h4,
.card-title,
.section-title,
.main-title {
  font-size: var(--font-subtitle);
  line-height: var(--line-height-title);
}

h5,
.h5 {
  font-size: var(--font-subtitle);
  line-height: var(--line-height-title);
}

h6,
.h6 {
  font-size: var(--font-body);
  line-height: var(--line-height-title);
}

.subtitle,
.sub-title,
.text-muted,
.form-text,
.help-text,
.help-block,
.small,
small,
.subtle,
.info-text {
  font-size: var(--font-info);
}

p,
label,
.form-label,
.form-control,
.form-select,
.input-group-text,
.btn,
.table,
.dropdown-item,
.nav-link,
.list-group-item {
  font-size: var(--font-body);
}

.badge {
  font-size: var(--font-info);
}

.lead {
  font-size: var(--font-subtitle);
}

:is(p, span, div, a, label, td, th, small, li).fs-10,
:is(p, span, div, a, label, td, th, small, li).fs-11,
:is(p, span, div, a, label, td, th, small, li).fs-12 {
  font-size: var(--font-info);
}

:is(p, span, div, a, label, td, th, small, li).fs-13,
:is(p, span, div, a, label, td, th, small, li).fs-14,
:is(p, span, div, a, label, td, th, small, li).fs-15,
:is(p, span, div, a, label, td, th, small, li).fs-16 {
  font-size: var(--font-body);
}

:is(p, span, div, a, label, td, th, small, li).fs-18,
:is(p, span, div, a, label, td, th, small, li).fs-20 {
  font-size: var(--font-subtitle);
}

:is(p, span, div, a, label, td, th, small, li).fs-24,
:is(p, span, div, a, label, td, th, small, li).fs-28,
:is(p, span, div, a, label, td, th, small, li).fs-32,
:is(p, span, div, a, label, td, th, small, li).fs-36 {
  font-size: var(--font-title);
}
