/* Global readability layer loaded last across the members area. */
:root {
  --readable-xs: 13px;
  --readable-sm: 14px;
  --readable-md: 15px;
  --readable-lg: 17px;
}

body {
  font-size: var(--readable-md);
  text-rendering: optimizeLegibility;
}

button,
.primary-button,
.ghost-button,
.complete-button,
.text-button,
.text-inline-button,
.unlock-link,
.collapse-all,
.back-link,
.live-room-play,
.host-button,
.zoom-connect-button,
.recording-button,
.primary-admin,
.admin-course__actions button,
.dialog-actions button,
.content-toolbar button,
.paste-kiwify-fields,
.delete-lesson-button,
.youtube-upload-field > button,
.admin-comment__actions button,
.comment-form button,
.signup-button,
.google-login,
.login-submit,
.filter-tabs button,
.material-panel > button,
.file-row,
.lesson-navigation button,
.date-option,
.teacher-date-options .date-option {
  font-size: var(--readable-md) !important;
  line-height: 1.25 !important;
  font-weight: 800;
}

button,
.primary-button,
.ghost-button,
.complete-button,
.text-button,
.unlock-link,
.host-button,
.zoom-connect-button,
.recording-button,
.primary-admin,
.dialog-actions button,
.content-toolbar button,
.admin-course__actions button,
.comment-form button,
.login-submit,
.google-login,
.signup-button,
.date-option {
  min-height: 42px !important;
  padding: 12px 18px !important;
}

input,
select,
textarea,
.search-box input,
.admin-search input,
#lesson-form input,
#lesson-form select,
#lesson-form textarea,
.form-grid input,
.form-grid select,
.form-grid textarea,
.youtube-upload-dialog input,
.youtube-upload-dialog textarea,
.zoom-link-card input,
.live-register-form input,
.live-register-form textarea,
form input {
  font-size: var(--readable-md) !important;
  line-height: 1.45 !important;
}

label,
#lesson-form label,
.form-grid label,
.youtube-upload-dialog label,
.live-register-form label,
.zoom-link-card label,
.admin-comment label,
.comment-form label {
  font-size: var(--readable-sm) !important;
  line-height: 1.35 !important;
  font-weight: 800;
}

small,
.eyebrow,
.section-kicker,
.editor-kicker,
.brand__copy small,
.lesson-brand small,
.course-identity small,
.video-copy small,
.now-playing,
.access-tag,
.daily-badge,
.journey-current-panel small,
.journey-offer small,
.live-pill,
.status,
.status-pill,
.comment-status,
.admin-comment__status,
.video-ok,
.video-missing,
.lesson-release-box strong,
.teacher-reply strong,
.block-timer span,
.mobile-module-select,
.lesson-navigation small,
.course-card__body > small,
.metric-grid article small,
.card-heading span,
.integration-card > div:nth-child(2) > span,
th {
  font-size: var(--readable-xs) !important;
  line-height: 1.35 !important;
  letter-spacing: .08em;
}

p,
li,
td,
dd,
.hero__content > p,
.daily-plan__main p,
.daily-task small,
.journey-current-panel p,
.journey-offer p,
.journey-offer b,
.journey-step div span,
.live-card p,
.live-scheduler p,
.live-rules,
.live-focus span,
.date-option span,
.live-actions p,
.live-access p,
.course-card__body p,
.progress-label,
.support-action span,
.support-hub p,
.lesson-toolbar p,
.curriculum-heading p,
.selected-module__heading p,
.lesson-row small,
.material-panel > p,
.file-row div,
.file-row small,
.material-empty,
.teacher-note p,
.teacher-note span,
.lesson-toast,
.lesson-comment__body,
.teacher-reply p,
.comments-empty,
.live-room-copy p,
.live-room-toolbar p,
.live-room-details p,
.live-room-note p,
.zoom-oauth-status,
.admin-course__body p,
.admin-course__meta,
.integration-card p,
.integration-card dt,
.integration-card dd,
.admin-comments-empty,
.admin-comment__question,
.admin-comment__meta small,
.admin-comment__meta time,
.login-box > p,
.demo-hint,
.login-help {
  font-size: var(--readable-md) !important;
  line-height: 1.58 !important;
}

.course-card,
.daily-plan,
.journey-guide,
.journey-current-panel,
.journey-offer,
.journey-step,
.performance-item,
.support-action,
.live-card,
.live-scheduler,
.material-panel,
.lesson-row,
.comment-form,
.lesson-comment,
.admin-course,
.integration-card,
.admin-comment,
.login-box,
.youtube-upload-dialog {
  font-size: var(--readable-md) !important;
}

h2,
.section-heading h2,
.content-dialog h2,
.youtube-upload-dialog h2,
.comments-heading h2,
.live-room-toolbar h2,
.live-room-note h2 {
  line-height: 1.18;
}

h3,
.course-card__body h3,
.daily-plan__main h3,
.live-card h3,
.live-scheduler h3,
.selected-module__heading h3,
.admin-course__body h3,
.card-heading h2 {
  font-size: clamp(18px, 1.45vw, 23px) !important;
  line-height: 1.22 !important;
  color: #fff8ea;
}

.lesson-row strong,
.journey-current-panel h3,
.journey-offer strong,
.journey-step strong,
.daily-task strong,
.performance-item strong,
.admin-comment__meta strong,
.lesson-comment__top strong,
.support-action strong {
  font-size: var(--readable-lg) !important;
  line-height: 1.25 !important;
  color: #fff8ea;
}

.module-title,
.lesson-title,
.lesson-name,
.admin-course__title,
.content-dialog h3,
.youtube-upload-dialog h2,
.login-box h1,
.section-heading h2,
.comments-heading h2 {
  color: #fff8ea;
  font-size: clamp(18px, 1.6vw, 24px) !important;
  line-height: 1.18 !important;
}

.course-card__body > small,
.lesson-row small,
.daily-task small,
.material-panel small,
.file-row small,
.admin-course__meta,
.admin-comment__meta,
.login-help,
.demo-hint {
  color: rgba(255, 248, 234, .78) !important;
}

.section-heading {
  margin-bottom: 30px !important;
}

.section-kicker,
.eyebrow {
  font-size: 14px !important;
  line-height: 1.2 !important;
  letter-spacing: .16em !important;
}

.section-heading h2,
.curriculum-heading h2 {
  font-size: clamp(28px, 2.2vw, 36px) !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
}

.section-heading > a,
.curriculum-heading button {
  font-size: 15px !important;
}

.journey-row {
  padding: 28px !important;
  gap: 14px !important;
}

.journey-current-panel {
  padding: 32px !important;
}

.journey-current-panel h3 {
  font-size: clamp(29px, 2.2vw, 38px) !important;
  line-height: 1.08 !important;
}

.journey-current-panel p {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

.journey-marker {
  font-size: 14px !important;
  line-height: 1.2 !important;
}

.journey-offer strong {
  font-size: 18px !important;
  line-height: 1.22 !important;
}

.journey-offer p,
.journey-offer b {
  font-size: 15px !important;
}

.journey-step {
  min-width: 230px !important;
  gap: 15px !important;
}

.journey-step small {
  font-size: 14px !important;
  line-height: 1.2 !important;
  letter-spacing: .15em !important;
}

.journey-step strong {
  margin: 6px 0 4px !important;
  font-size: 20px !important;
  line-height: 1.18 !important;
}

.journey-step div span {
  font-size: 16px !important;
  line-height: 1.35 !important;
}

.journey-step > i {
  font-size: 13px !important;
  font-weight: 900 !important;
}

.module-tabs {
  grid-template-columns: repeat(7, minmax(138px, 1fr)) !important;
  gap: 12px !important;
}

.module-tab {
  min-height: 132px !important;
  padding: 17px !important;
  border-radius: 12px !important;
}

.module-tab span {
  width: 31px !important;
  height: 31px !important;
  margin-bottom: 14px !important;
  font-size: 11px !important;
}

.module-tab strong {
  font-size: 13px !important;
  line-height: 1.22 !important;
}

.module-tab small {
  margin-top: 9px !important;
  font-size: 18px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  color: #fff8ea !important;
}

.curriculum-heading p {
  font-size: 16px !important;
  line-height: 1.35 !important;
}

.mobile-nav a {
  font-size: var(--readable-xs) !important;
  font-weight: 800;
}

@media (max-width: 620px) {
  :root {
    --readable-xs: 13px;
    --readable-sm: 15px;
    --readable-md: 16px;
    --readable-lg: 18px;
  }

  button,
  .primary-button,
  .ghost-button,
  .complete-button,
  .primary-admin,
  .dialog-actions button,
  .admin-course__actions button,
  .content-toolbar button,
  .youtube-upload-field > button,
  .comment-form button,
  .login-submit,
  .google-login,
  .signup-button {
    min-height: 46px !important;
    font-size: 16px !important;
    padding: 13px 18px !important;
  }

  .course-card__body h3,
  .lesson-row strong,
  .selected-module__heading h3 {
    font-size: 18px !important;
    white-space: normal !important;
  }

  .course-card__body p,
  .lesson-row small,
  .selected-module__heading p,
  .material-panel > p,
  .live-room-toolbar p,
  .live-room-details p,
  .live-room-note p,
  .admin-comment__question,
  .lesson-comment__body {
    font-size: 16px !important;
  }

  .mobile-nav a {
    font-size: 13px !important;
  }

  .section-heading {
    margin-bottom: 22px !important;
  }

  .section-kicker,
  .eyebrow {
    font-size: 13px !important;
  }

  .section-heading h2,
  .curriculum-heading h2 {
    font-size: 25px !important;
  }

  .journey-row {
    padding: 16px !important;
  }

  .journey-current-panel {
    padding: 24px 20px !important;
  }

  .journey-current-panel h3 {
    font-size: 25px !important;
  }

  .journey-current-panel p,
  .journey-offer p,
  .journey-offer b {
    font-size: 16px !important;
  }

  .journey-offer {
    padding: 16px !important;
  }

  .journey-offer strong {
    font-size: 18px !important;
  }

  .journey-step {
    min-width: 0 !important;
    padding: 15px !important;
  }

  .journey-step strong {
    font-size: 18px !important;
  }

  .journey-step div span {
    font-size: 15px !important;
  }

  .mobile-module-select {
    font-size: 15px !important;
  }

  .mobile-module-select select {
    min-height: 46px !important;
    font-size: 16px !important;
  }
}
