/*
 * Tech Learning Academy - sitewide readable typography v1
 * Public pages, course catalogue, auth forms, Tutor LMS dashboards/player.
 * Keep layout, brand colours and native WP admin unchanged.
 */
:root{
  --tla-readable-body:17px;
  --tla-readable-small:14px;
  --tla-readable-compact:15px;
  --tla-readable-control:16px;
}
body.tla-site-view,
body.tutor-frontend,
body.single-courses,
body.single-lesson{
  font-family:"Segoe UI",Arial,sans-serif;
  font-size:var(--tla-readable-body);
  line-height:1.7;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body.tla-site-view :is(p,li,dd,blockquote),
body.tutor-frontend :is(p,li,dd,blockquote){
  overflow-wrap:break-word;
}
body.tla-site-view :is(input,textarea,select),
body.tutor-frontend :is(input,textarea,select){
  font-size:var(--tla-readable-control);
  line-height:1.5;
}
body.tla-site-view :is(button,.tla-button),
body.tutor-frontend :is(button,.tutor-btn){
  line-height:1.45;
}
/* Shared public navbar: avoid tiny menu text; collapse earlier on narrow laptops. */
body.tla-site-view .tla-ref-site-header .tla-navigation>a{
  font-size:15px;
  line-height:1.45;
}
body.tla-site-view .tla-ref-site-header .tla-nav-actions>a{
  font-size:15px;
  min-height:42px;
}
body.tla-site-view .tla-site-search :is(input,button){font-size:16px}
body.tla-site-view .tla-site-search input{min-height:44px}
body.tla-site-view .tla-site-search button{min-height:44px}
body.tla-site-view .tla-ref-site-header .tla-navigation{column-gap:clamp(5px,1vw,14px)}
/* Intro and academy pages */
body.tla-site-view .tla-page-header p{font-size:18px;line-height:1.65}
body.tla-site-view .tla-page-content :is(p,li){font-size:17px;line-height:1.75}
body.tla-site-view .tla-page-content .tla-lead{font-size:20px;line-height:1.65}
body.tla-site-view .tla-page-content h2{font-size:clamp(27px,2.5vw,34px);line-height:1.23}
body.tla-site-view .tla-page-content h3{font-size:clamp(21px,2vw,26px);line-height:1.3}
body.tla-site-view .tla-page-content details summary{
  font-size:18px;
  line-height:1.5;
}
body.tla-site-view .tla-page-content details p{font-size:16px;line-height:1.75}
body.tla-site-view .tla-kicker{font-size:13px;line-height:1.45}
/* Register, sign in, verify, password reset, account/application details */
body.tla-site-view .tla-role-card>span{font-size:14px}
body.tla-site-view .tla-role-card :is(p,li){font-size:17px;line-height:1.65}
body.tla-site-view .tla-form label,
body.tla-site-view .tla-extra-fields label{
  font-size:16px;
  line-height:1.5;
}
body.tla-site-view :is(.tla-form input,.tla-form textarea,.tla-form select,.tla-extra-fields input,.tla-extra-fields textarea,.tla-course-search input){
  font-size:16px;
  min-height:46px;
  line-height:1.5;
}
body.tla-site-view .tla-form p{font-size:16px;line-height:1.7}
body.tla-site-view :is(.tla-under-form,.tla-extra-fields .tla-field-hint){font-size:14px;line-height:1.6}
body.tla-site-view .tla-message{font-size:16px;line-height:1.65}
body.tla-site-view a.tla-button,
body.tla-site-view .tla-button{font-size:16px;min-height:46px}
body.tla-site-view .tla-course-search label{font-size:18px}
/* Other current course cards outside the homepage */
body.tla-site-view .tla-course-tag{font-size:14px}
body.tla-site-view .tla-course-body h3{font-size:clamp(20px,1.85vw,25px)}
body.tla-site-view .tla-course-body p{font-size:16px;line-height:1.65}
body.tla-site-view .tla-course-bottom{font-size:14px;line-height:1.5}
body.tla-site-view .tla-course-search input{font-size:16px}
/* Homepage: main introduction */
body.tla-site-view .tla-ref-home .tla-ref-eyebrow{font-size:14px;line-height:1.3}
body.tla-site-view .tla-ref-home .tla-ref-copy>p{
  font-size:18px;
  line-height:1.65;
  max-width:540px;
}
body.tla-site-view .tla-ref-home a.tla-ref-primary,
body.tla-site-view .tla-ref-home a.tla-ref-secondary{
  font-size:16px;
  min-height:47px;
  line-height:1.35;
}
body.tla-site-view .tla-ref-home .tla-ref-trust{font-size:14px;line-height:1.55}
body.tla-site-view .tla-ref-home .tla-ref-stat-title{font-size:14px;line-height:1.5}
body.tla-site-view .tla-ref-home .tla-ref-stat-count{font-size:25px}
/* Homepage: course cards and action links */
body.tla-site-view .tla-ref-home .tla-ref-section-head p{font-size:16px;line-height:1.55}
body.tla-site-view .tla-ref-home .tla-ref-all-link{font-size:15px;line-height:1.45}
body.tla-site-view .tla-ref-home .tla-ref-course h3{
  font-size:18px;
  line-height:1.3;
  min-height:0;
}
body.tla-site-view .tla-ref-home .tla-ref-course-body p{
  font-size:16px;
  line-height:1.55;
  min-height:0;
}
body.tla-site-view .tla-ref-home .tla-ref-course-meta{
  font-size:14px;
  line-height:1.5;
  gap:6px;
}
body.tla-site-view .tla-ref-home .tla-ref-course-new{font-size:14px;line-height:1.4}
body.tla-site-view .tla-ref-home a.tla-ref-enroll{
  font-size:14px;
  min-height:40px;
  padding:10px 13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1.3;
}
body.tla-site-view .tla-ref-home .tla-ref-course-body{padding:16px}
body.tla-site-view .tla-ref-home .tla-ref-course-foot{gap:9px}
body.tla-site-view .tla-ref-home .tla-ref-course-meta span{white-space:normal}
/* Homepage: benefits, three learning steps and real testimonials */
body.tla-site-view .tla-ref-home .tla-ref-benefits-intro p{font-size:16px;line-height:1.62}
body.tla-site-view .tla-ref-home .tla-ref-benefit h3{font-size:17px;line-height:1.35}
body.tla-site-view .tla-ref-home .tla-ref-benefit p{font-size:15px;line-height:1.55}
body.tla-site-view .tla-ref-home .tla-ref-step h3{font-size:17px;line-height:1.4}
body.tla-site-view .tla-ref-home .tla-ref-step p{font-size:15px;line-height:1.55}
body.tla-site-view .tla-ref-home .tla-ref-review-top strong{font-size:16px}
body.tla-site-view .tla-ref-home .tla-ref-review p,
body.tla-site-view .tla-ref-home .tla-ref-review-empty p{font-size:16px;line-height:1.65}
body.tla-site-view .tla-ref-home .tla-ref-review-empty h3{font-size:20px}
body.tla-site-view .tla-ref-home .tla-ref-review-empty a.tla-ref-secondary{
  font-size:15px;
  white-space:normal;
  text-align:center;
}
/* Homepage: end-of-page CTA */
body.tla-site-view .tla-ref-home .tla-ref-cta h2{
  font-size:clamp(23px,2.25vw,31px);
  line-height:1.2;
}
body.tla-site-view .tla-ref-home .tla-ref-cta p{font-size:16px;line-height:1.55}
body.tla-site-view .tla-ref-home .tla-ref-cta>a{
  font-size:15px;
  line-height:1.45;
  min-height:46px;
  white-space:normal;
}
/* All custom public pages share footer. Keep minor legal text small but readable. */
body.tla-site-view .tla-reference-footer .tla-footer-about p{font-size:15px;line-height:1.65}
body.tla-site-view .tla-reference-footer .tla-footer-links strong,
body.tla-site-view .tla-reference-footer .tla-ref-newsletter>strong{font-size:16px;line-height:1.5}
body.tla-site-view .tla-reference-footer .tla-footer-links a{font-size:14px;line-height:1.55}
body.tla-site-view .tla-reference-footer .tla-ref-newsletter p{font-size:14px;line-height:1.6}
body.tla-site-view .tla-reference-footer .tla-ref-newsletter input[type=email],
body.tla-site-view .tla-reference-footer .tla-ref-newsletter form button{font-size:15px;min-height:45px}
body.tla-site-view .tla-reference-footer .tla-newsletter-consent{font-size:13px;line-height:1.55}
body.tla-site-view .tla-reference-footer .tla-newsletter-status{font-size:14px;line-height:1.5}
body.tla-site-view .tla-reference-footer .tla-footer-bottom{font-size:13px;line-height:1.55}
/* Tutor LMS frontend: course detail, registration, lesson player, student/instructor portals */
body.tutor-frontend .tutor-wrap,
body.tla-site-view .tutor-wrap,
body.tla-site-view .tutor-dashboard{font-size:17px;line-height:1.65}
body.tutor-frontend .tutor-course-details-page :is(p,li),
body.tutor-frontend .tutor-course-details-content :is(p,li),
body.tutor-frontend .tutor-course-details-page .tutor-course-content-list-item,
body.tutor-frontend .tutor-single-lesson-wrap :is(p,li){
  font-size:17px;
  line-height:1.7;
}
body.tutor-frontend .tutor-fs-7,
body.tla-site-view .tutor-fs-7,
body.tutor-frontend .tutor-fs-8,
body.tla-site-view .tutor-fs-8{font-size:14px}
body.tutor-frontend .tutor-fs-6,
body.tla-site-view .tutor-fs-6{font-size:16px}
body.tutor-frontend .tutor-fs-5,
body.tla-site-view .tutor-fs-5{font-size:20px}
body.tutor-frontend .tutor-fs-4,
body.tla-site-view .tutor-fs-4{font-size:25px}
body.tutor-frontend .tutor-form-control,
body.tla-site-view .tutor-form-control,
body.tutor-frontend .tutor-form-select,
body.tla-site-view .tutor-form-select{
  font-size:16px;
  line-height:1.55;
}
body.tutor-frontend .tutor-btn,
body.tla-site-view .tutor-btn{
  font-size:16px;
  line-height:1.45;
  min-height:43px;
}
body.tla-site-view .tutor-dashboard .tutor-dashboard-menu-item a,
body.tla-site-view .tutor-dashboard .tutor-dashboard-menu-item-text,
body.tutor-frontend .tutor-dashboard .tutor-dashboard-menu-item a,
body.tutor-frontend .tutor-dashboard .tutor-dashboard-menu-item-text{font-size:16px;line-height:1.55}
body.tutor-frontend .tutor-course-content-list-item-title,
body.tla-site-view .tutor-course-content-list-item-title,
body.tutor-frontend .tutor-course-topic-title,
body.tla-site-view .tutor-course-topic-title{font-size:16px;line-height:1.55}
body.tutor-frontend .tutor-course-details-page .tutor-lead-info-btn-group button,
body.tutor-frontend .tutor-course-details-page .tutor-btn{font-size:16px}
/* Native theme shell on Tutor course pages */
body.single-courses .main-navigation a,
body.page-id-12 .main-navigation a,
body.single-lesson .main-navigation a{font-size:15px;line-height:1.5}
body.single-courses #colophon:after,
body.page-id-12 #colophon:after{font-size:14px}
/* Header collapses before expanded links become cramped. */
@media(max-width:1170px) and (min-width:951px){
  body.tla-site-view .tla-ref-site-header .tla-nav-toggle{
    display:block;
    order:3;
  }
  body.tla-site-view .tla-ref-site-header .tla-navigation{
    display:none;
    position:absolute;
    inset-inline:0;
    top:100%;
    background:#FFFFFF;
    border-top:1px solid #DFE7F2;
    border-bottom:1px solid #DFE7F2;
    box-shadow:0 16px 24px rgba(16,29,53,.1);
    padding:20px 25px 24px;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
  }
  body.tla-site-view .tla-ref-site-header .tla-navigation.is-open{display:flex}
  body.tla-site-view .tla-ref-site-header .tla-navigation>a{
    font-size:16px;
    padding:11px 14px;
  }
  body.tla-site-view .tla-ref-site-header .tla-nav-actions{
    margin:8px 0 0;
    flex-wrap:wrap;
  }
}
/* When a 4-column course grid is too narrow for readable text, use two columns. */
@media(max-width:1150px) and (min-width:701px){
  body.tla-site-view .tla-ref-home .tla-ref-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.tla-site-view .tla-ref-home .tla-ref-course-image,
  body.tla-site-view .tla-ref-home .tla-ref-coming-cover{height:175px}
}
@media(max-width:700px){
  body.tla-site-view .tla-ref-home .tla-ref-hero-inner{gap:20px}
  body.tla-site-view .tla-ref-home .tla-ref-copy h1{font-size:clamp(37px,8.5vw,45px)!important}
  body.tla-site-view .tla-ref-home .tla-ref-copy>p{font-size:17px!important;line-height:1.65}
  body.tla-site-view .tla-ref-home .tla-ref-hero-buttons>a{font-size:15px!important;white-space:normal}
  body.tla-site-view .tla-ref-home .tla-ref-trust{font-size:13px;gap:10px 14px}
  body.tla-site-view .tla-ref-home .tla-ref-stat-title{font-size:13px}
  body.tla-site-view .tla-ref-home .tla-ref-section-head p{font-size:16px}
  body.tla-site-view .tla-ref-home .tla-ref-course h3{font-size:19px}
  body.tla-site-view .tla-ref-home .tla-ref-course-body p{font-size:16px}
  body.tla-site-view .tla-ref-home .tla-ref-course-meta{font-size:14px}
  body.tla-site-view .tla-ref-home .tla-ref-benefit p{font-size:15px}
  body.tla-site-view .tla-ref-home .tla-ref-step h3{font-size:17px!important}
  body.tla-site-view .tla-ref-home .tla-ref-step p{font-size:15px}
  body.tla-site-view .tla-ref-home .tla-ref-cta p{font-size:16px}
  body.tla-site-view .tla-page-content :is(p,li){font-size:17px}
}
@media(max-width:480px){
  body.tla-site-view .tla-ref-home .tla-ref-copy h1{font-size:38px!important}
  body.tla-site-view .tla-ref-home .tla-ref-hero-buttons>a{font-size:15px!important;min-height:46px}
  body.tla-site-view .tla-ref-home .tla-ref-course-grid{grid-template-columns:1fr}
  body.tla-site-view .tla-ref-home .tla-ref-all-link{font-size:14px}
  body.tla-site-view .tla-ref-home .tla-ref-section-head{gap:10px}
  body.tla-site-view .tla-ref-home .tla-ref-review-empty{gap:15px}
  body.tla-site-view .tla-reference-footer .tla-footer-links{column-gap:20px}
}
