/* =========================
   Site typography consistency layer
   Loaded after page-specific styles so page titles stay uniform.
   ========================= */
:root{
  --ppl-site-title-font:'Raleway',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --ppl-site-h1-size:clamp(1.5rem,2.05vw,1.95rem);
  --ppl-site-h1-mobile-size:clamp(1.35rem,5.8vw,1.68rem);
  --ppl-site-h1-weight:800;
  --ppl-site-h1-line-height:1.16;
  --ppl-site-title-size:clamp(1.1rem,1.55vw,1.35rem);
  --ppl-site-section-title-size:clamp(1.35rem,1.85vw,1.7rem);
  --ppl-site-section-title-mobile-size:clamp(1.22rem,5vw,1.48rem);
  --ppl-site-title-weight:800;
  --ppl-site-h2-size:clamp(1.28rem,1.75vw,1.55rem);
  --ppl-site-h2-mobile-size:clamp(1.18rem,5vw,1.38rem);
  --ppl-site-h3-size:clamp(1.04rem,1.1vw,1.16rem);
  --ppl-site-h3-mobile-size:clamp(1rem,4.3vw,1.1rem);
  --ppl-site-h4-size:.98rem;
  --ppl-site-h5-size:.9rem;
  --ppl-site-h6-size:.78rem;
}

body h1:not(.pharma-brand):not(.loader-brand),
body .ppl-title,
body .page-header,
body .pricing-title,
body .ppl-boards__title,
body .ppl-board__title,
body .ppl-checkout__title,
body .ppl-legal__title,
body .offline-title,
body .error-title,
body .forbidden-title,
body .maintenance-title,
body .hall-title,
body .ppl-examHero__title,
body .ppl-exams-header__title,
body .search-title,
body .section-hero__title,
body .ttsum__title,
body .ppl-planBar__title,
body .ppl-plan__title,
body .careform-banner-title{
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-h1-size)!important;
  font-weight:var(--ppl-site-h1-weight)!important;
  line-height:var(--ppl-site-h1-line-height)!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
  word-break:normal;
  text-wrap:balance;
}

body h1:not(.pharma-brand):not(.loader-brand) span,
body .pricing-title span,
body .ppl-boards__title span,
body .ppl-board__title span,
body .ppl-checkout__title span,
body .ppl-legal__title span,
body .offline-title span,
body .error-title span,
body .forbidden-title span,
body .maintenance-title span,
body .hall-title span,
body .ppl-examHero__title span,
body .ppl-exams-header__title span,
body .search-title span,
body .section-hero__title span,
body .careform-banner-title span{
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  letter-spacing:0!important;
}

body :is(
  .card-title,
  .modal-title,
  .ppl-section-title,
  .ppl-section__title,
  .section-title,
  .panel-title,
  .ppl-cardTitle,
  .ppl-card__title,
  .ppl-academyPanel__head h2,
  .ppl-academyPanel h2,
  .ppl-academyContentBlock>h2,
  .ppl-academyReaderBody h2,
  .ppl-booksSection h2,
  .ppl-boardSection h2
){
  font-family:var(--ppl-site-title-font)!important;
  font-weight:var(--ppl-site-title-weight)!important;
  letter-spacing:0!important;
  line-height:1.22!important;
}

body .navbar-top h1.pharma-brand,
body .ppl-nav h1.pharma-brand,
body h1.loader-brand{
  text-transform:none!important;
  letter-spacing:0!important;
}

@media(max-width:640px){
  body h1:not(.pharma-brand):not(.loader-brand),
  body .ppl-title,
  body .page-header,
  body .pricing-title,
  body .ppl-boards__title,
  body .ppl-board__title,
  body .ppl-checkout__title,
  body .ppl-legal__title,
  body .offline-title,
  body .error-title,
  body .forbidden-title,
  body .maintenance-title,
  body .hall-title,
  body .ppl-examHero__title,
  body .ppl-exams-header__title,
  body .search-title,
  body .section-hero__title,
  body .ttsum__title,
  body .ppl-planBar__title,
  body .ppl-plan__title,
  body .careform-banner-title{
    font-size:var(--ppl-site-h1-mobile-size)!important;
    line-height:1.18!important;
  }
}

/* Known page H1 selector overrides: matches high-specificity page CSS rules. */
body :is(
  .academy-mcp-auth,
  .careers-hero,
  .careers-success,
  .careers-hero--role,
  .careers-apply-aside,
  .careform-banner-content,
  .ppl-gameHud,
  .ppl-trainingGate,
  .ppl-gameBrand,
  .drug-detail-hero,
  .ppl-settings__hero,
  .crm-delete-card,
  .crm-hero,
  .waiting-card,
  .ppl-booksHero,
  .ppl-bookReaderHero,
  .teamHero,
  .teamInviteCard,
  .an-hero,
  .topstory,
  .banner,
  .ppl-unitHero,
  .ppl-academyPageHead,
  .ppl-academyHero,
  .ppl-academyCourseHero,
  .ppl-academyBuilder__top,
  .ppl-academyNoteHero--reader,
  .ppl-academyAssessmentSide,
  .ppl-academySuccessPanel,
  .pplStudyAdmin__hero,
  .ppl-studyHero,
  .ppl-noteHero,
  .ppl-comingSoon,
  .condition-banner,
  .case-study-banner,
  .no-js-card,
  .upload-banner,
  .resources-banner,
  .mk-header,
  .unavailable-card,
  .success-message,
  .ppl-partnersThanks,
  .ppl-partnersHero--compact
) h1:not(.pharma-brand):not(.loader-brand),
body #notesContent > h1,
body #notesContent > h1:first-of-type,
html[data-theme="dark"] body .careers-success h1,
html[data-theme="dark"] body a.text-decoration-none h1{
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-h1-size)!important;
  font-weight:var(--ppl-site-h1-weight)!important;
  line-height:var(--ppl-site-h1-line-height)!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
  word-break:normal;
  text-wrap:balance;
}

body a.text-decoration-none h1:not(.pharma-brand):not(.loader-brand),
html[data-theme="dark"] body a.text-decoration-none h1:not(.pharma-brand):not(.loader-brand){
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-h1-size)!important;
  font-weight:var(--ppl-site-h1-weight)!important;
  line-height:var(--ppl-site-h1-line-height)!important;
  letter-spacing:0!important;
}

@media(max-width:640px){
  body :is(
    .academy-mcp-auth,
    .careers-hero,
    .careers-success,
    .careers-hero--role,
    .careers-apply-aside,
    .careform-banner-content,
    .ppl-gameHud,
    .ppl-trainingGate,
    .ppl-gameBrand,
    .drug-detail-hero,
    .ppl-settings__hero,
    .crm-delete-card,
    .crm-hero,
    .waiting-card,
    .ppl-booksHero,
    .ppl-bookReaderHero,
    .teamHero,
    .teamInviteCard,
    .an-hero,
    .topstory,
    .banner,
    .ppl-unitHero,
    .ppl-academyPageHead,
    .ppl-academyHero,
    .ppl-academyCourseHero,
    .ppl-academyBuilder__top,
    .ppl-academyNoteHero--reader,
    .ppl-academyAssessmentSide,
    .ppl-academySuccessPanel,
    .pplStudyAdmin__hero,
    .ppl-studyHero,
    .ppl-noteHero,
    .ppl-comingSoon,
    .condition-banner,
    .case-study-banner,
    .no-js-card,
    .upload-banner,
    .resources-banner,
    .mk-header,
    .unavailable-card,
    .success-message,
    .ppl-partnersThanks,
    .ppl-partnersHero--compact
  ) h1:not(.pharma-brand):not(.loader-brand),
  body #notesContent > h1,
  body #notesContent > h1:first-of-type,
  body a.text-decoration-none h1:not(.pharma-brand):not(.loader-brand){
    font-size:var(--ppl-site-h1-mobile-size)!important;
    line-height:1.18!important;
  }
}
/* Site section heading consistency: covers prominent h2/h3 titles that are not page h1s. */
body :is(
  .ppl-sectionHead h2,
  .ppl-testimonials__title,
  .ppl-faq__title,
  .pricing-student-plan h2,
  .ppl-academyCta h2,
  .ppl-planStrip__title,
  .ppl-homePricingBridge h2,
  .ppl-featureGrid h2,
  .ppl-videoRail h2,
  .ppl-pricing h2,
  .ppl-daily-mcqs h2,
  .ppl-ebook h2,
  .ppl-blogStrip h2,
  .ppl-booksSection h2,
  .ppl-boardSection h2,
  .learning-access h2,
  .careers-section h2,
  .ppl-partnersSection h2,
  .mk-section h2,
  .resources-section h2,
  .study-section h2
){
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-section-title-size)!important;
  font-weight:var(--ppl-site-title-weight)!important;
  line-height:1.18!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
  text-wrap:balance;
}

body :is(
  .ppl-sectionHead h2,
  .ppl-testimonials__title,
  .ppl-faq__title,
  .pricing-student-plan h2,
  .ppl-academyCta h2,
  .ppl-planStrip__title,
  .ppl-homePricingBridge h2,
  .ppl-featureGrid h2,
  .ppl-videoRail h2,
  .ppl-pricing h2,
  .ppl-daily-mcqs h2,
  .ppl-ebook h2,
  .ppl-blogStrip h2
) span{
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  letter-spacing:0!important;
}

@media(max-width:640px){
  body :is(
    .ppl-sectionHead h2,
    .ppl-testimonials__title,
    .ppl-faq__title,
    .pricing-student-plan h2,
    .ppl-academyCta h2,
    .ppl-planStrip__title,
    .ppl-homePricingBridge h2,
    .ppl-featureGrid h2,
    .ppl-videoRail h2,
    .ppl-pricing h2,
    .ppl-daily-mcqs h2,
    .ppl-ebook h2,
    .ppl-blogStrip h2,
    .ppl-booksSection h2,
    .ppl-boardSection h2,
    .learning-access h2,
    .careers-section h2,
    .ppl-partnersSection h2,
    .mk-section h2,
    .resources-section h2,
    .study-section h2
  ){
    font-size:var(--ppl-site-section-title-mobile-size)!important;
    line-height:1.2!important;
  }
}
/* Final page-content heading ladder.
   Keep this below targeted overrides so page content wins consistently while nav/footer chrome stays untouched. */
body .main-area h1:not(.pharma-brand):not(.loader-brand),
body .main-area :is(
  .ppl-title,
  .page-header,
  .pricing-title,
  .ppl-boards__title,
  .ppl-board__title,
  .ppl-checkout__title,
  .ppl-legal__title,
  .offline-title,
  .error-title,
  .forbidden-title,
  .maintenance-title,
  .hall-title,
  .ppl-examHero__title,
  .ppl-exams-header__title,
  .search-title,
  .section-hero__title,
  .ttsum__title,
  .ppl-planBar__title,
  .ppl-plan__title,
  .careform-banner-title
){
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-h1-size)!important;
  font-weight:var(--ppl-site-h1-weight)!important;
  line-height:var(--ppl-site-h1-line-height)!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
  word-break:normal;
  text-wrap:balance;
}

body .main-area h2,
body .main-area :is(
  .ppl-sectionTitle,
  .ppl-section-title,
  .ppl-section__title,
  .section-title,
  .card-title,
  .panel-title,
  .paper-panel__title,
  .pricing-products__title,
  .pricing-panel__title,
  .pricing-glance__head h2,
  .pricing-student-plan__copy h2,
  .ppl-testimonials__title,
  .ppl-faq__title,
  .ppl-planStrip__title,
  .ppl-pa__title,
  .ppl-ebook__title,
  .ppl-welcome__title,
  .ppl-miniTutorial__head h2,
  .ppl-miniTut__head h2,
  .ppl-academyPanel h2,
  .ppl-academyPanel__head h2,
  .ppl-academyTile__body h2,
  .ppl-academyLearningCard h2,
  .ppl-academySkillCard h2,
  .ppl-academyModeCard h2,
  .ppl-academyAdvert h2,
  .ppl-academyContentBlock > h2,
  .ppl-academyReaderBody h2,
  .ppl-booksSection h2,
  .ppl-boardSection h2,
  .ppl-sectionHead h2,
  .ppl-partnersSection h2,
  .ppl-formCard__head h2,
  .ppl-partnersCta h2,
  .resources-main-card h2,
  .form-container h2,
  .mk-panel h2,
  .mk-today h2,
  .drug-b h2,
  .px-checker h2,
  .drug-detail-panel__head h2,
  .drug-detail-checker h2,
  .ppl-arenaTitle h2,
  .ppl-sideHead h2,
  .ppl-gameGuide h2,
  .ppl-resultCopy h2,
  .ppl-intermission h2,
  .ppl-liveDrug h2,
  .ppl-scoreDecision__card h2,
  .ppl-actionModal__card h2,
  .crm-panel__head h2,
  .crm-section-head h2,
  .crm-followToolbar h2,
  .crm-followEditor__empty h2,
  .crm-followEditor__head h2,
  .ppl-panelHead h2,
  .an-table-head h2,
  .ppl-legal__section h2,
  .condition-info h2,
  .instruction-sidebar h2,
  .careers-section h2,
  .learning-access h2
){
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-h2-size)!important;
  font-weight:var(--ppl-site-title-weight)!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
  word-break:normal;
  text-wrap:balance;
}

body .main-area h3,
body .main-area :is(
  .ppl-cardTitle,
  .ppl-card__title,
  .ppl-offer-card__title,
  .paper-upgrade-card__title,
  .growth-card__title,
  .fair__title,
  .ppl-stickyCard__title,
  .ppl-contact__cardTitle,
  .ppl-academyModuleCard__head h3,
  .ppl-academyApplicationCopy h3,
  .ppl-partnerCard h3,
  .ppl-partnerMini h3,
  .ppl-partnerChecklist h3,
  .ppl-formAsideCard h3,
  .ppl-boardPaper h3,
  .drug-detail-field h3,
  .ppl-selectedDrug h3,
  .ppl-feedbackScore h3,
  .crm-card__body h3,
  .crm-contact-card h3,
  .crm-empty h3,
  .crm-followColumn__head h3,
  .ppl-card h3,
  .ppl-comingSoon h3,
  .ppl-emptyState h3,
  .ncard h3,
  .mk-panel h3,
  .mk-slide-card h3,
  .condition-info h3,
  .instruction-sidebar h3,
  .resources-main-card h3,
  .compact-layout h3
){
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-h3-size)!important;
  font-weight:var(--ppl-site-title-weight)!important;
  line-height:1.24!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
  word-break:normal;
}

body .main-area h4,
body .main-area :is(
  .ppl-vidCard__title,
  .ppl-captchaTitle,
  .ppl-feedbackGrid h4,
  .drug-card h4,
  .compact-layout h4
){
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-h4-size)!important;
  font-weight:800!important;
  line-height:1.25!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
}

body .main-area h5,
body .main-area :is(.modal-title, .card-title){
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-h5-size)!important;
  font-weight:800!important;
  line-height:1.25!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
}

body .main-area h6{
  font-family:var(--ppl-site-title-font)!important;
  font-size:var(--ppl-site-h6-size)!important;
  font-weight:800!important;
  line-height:1.25!important;
  letter-spacing:0!important;
  text-transform:none!important;
  overflow-wrap:anywhere;
}

body .main-area :is(h1,h2,h3,h4,h5,h6) span{
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:inherit!important;
  letter-spacing:0!important;
}

@media(max-width:640px){
  body .main-area h1:not(.pharma-brand):not(.loader-brand){
    font-size:var(--ppl-site-h1-mobile-size)!important;
    line-height:1.18!important;
  }

  body .main-area h2{
    font-size:var(--ppl-site-h2-mobile-size)!important;
    line-height:1.22!important;
  }

  body .main-area h3{
    font-size:var(--ppl-site-h3-mobile-size)!important;
  }
}
