:root{
    --tkm-color-ink:#0b1d39;
    --tkm-color-text:#293a50;
    --tkm-color-muted:#657386;
    --tkm-color-surface:#fff;
    --tkm-color-canvas:#f7f5f0;
    --tkm-color-line:#d9dfe5;
    --tkm-color-accent:#c9952e;
    --tkm-color-success:#2f6f4e;
    --tkm-color-danger:#a33b46;
    --tkm-space-1:.25rem;
    --tkm-space-2:.5rem;
    --tkm-space-3:.75rem;
    --tkm-space-4:1rem;
    --tkm-space-5:1.5rem;
    --tkm-space-6:2rem;
    --tkm-space-7:3rem;
    --tkm-radius-control:6px;
    --tkm-radius-panel:8px;
    --tkm-touch-target:44px;
    --tkm-font-sans:var(--tkm-font-primary,"Gilroy","Segoe UI",Arial,sans-serif);
    --tkm-sans:var(--tkm-font-sans);
    --tkm-display:var(--tkm-font-sans);
    --font:var(--tkm-font-sans);
    --font-display:var(--tkm-font-sans);
    --home-sans:var(--tkm-font-sans);
    --home-display:var(--tkm-font-sans);
    --pe-display:var(--tkm-font-sans);
    --pe-masthead:var(--tkm-font-sans);
    --pe-utility:var(--tkm-font-sans);
    --tkm-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
    --tkm-text-2xs:clamp(.72rem,.7rem + .05vw,.76rem);
    --tkm-text-xs:clamp(.78rem,.75rem + .08vw,.84rem);
    --tkm-text-sm:clamp(.86rem,.82rem + .12vw,.94rem);
    --tkm-text-base:clamp(.95rem,.91rem + .14vw,1rem);
    --tkm-text-md:clamp(1.02rem,.96rem + .22vw,1.12rem);
    --tkm-text-lg:clamp(1.16rem,1.06rem + .34vw,1.32rem);
    --tkm-text-xl:clamp(1.34rem,1.18rem + .56vw,1.62rem);
    --tkm-text-2xl:clamp(1.58rem,1.34rem + .82vw,2.04rem);
    --tkm-text-3xl:clamp(1.9rem,1.52rem + 1.24vw,2.62rem);
    --tkm-text-4xl:clamp(2.28rem,1.78rem + 1.78vw,3.34rem);
    --tkm-text-display:clamp(2.55rem,1.92rem + 2.25vw,4.05rem);
    --tkm-line-tight:1.08;
    --tkm-line-heading:1.16;
    --tkm-line-copy:1.62;
    --tkm-line-ui:1.36;
    --tkm-letter-ui:.01em;
    --tkm-letter-overline:.1em;
}

html{
    font-size:16px;
    -webkit-text-size-adjust:100%;
    text-size-adjust:100%;
}

body,
.admin-body,
.mod-body{
    font-family:var(--tkm-font-sans)!important;
    font-size:var(--tkm-text-base);
    line-height:var(--tkm-line-copy);
    letter-spacing:0;
}

body :where(
    h1,h2,h3,h4,h5,h6,
    p,a,button,input,select,textarea,optgroup,label,legend,
    ul,ol,li,dl,dt,dd,table,thead,tbody,tfoot,tr,th,td,
    small,strong,b,em,time,summary,blockquote,figcaption,caption,
    span:not(.bi):not(.ui-icon):not(.forum-icon):not(.member-svg-icon):not([class^="bi-"]):not([class*=" bi-"])
){
    font-family:var(--tkm-font-sans)!important;
}

button,
input,
select,
textarea{
    font:inherit;
    line-height:var(--tkm-line-ui);
}

h1,h2,h3,h4,h5,h6{
    font-family:var(--tkm-font-sans)!important;
    font-weight:820;
    line-height:var(--tkm-line-heading)!important;
    letter-spacing:0!important;
    text-wrap:balance;
}

h1{font-size:var(--tkm-text-4xl)!important;}
h2{font-size:var(--tkm-text-3xl)!important;}
h3{font-size:var(--tkm-text-xl)!important;}
h4{font-size:var(--tkm-text-lg)!important;}
h5{font-size:var(--tkm-text-md)!important;}
h6{font-size:var(--tkm-text-base)!important;}

p{
    line-height:var(--tkm-line-copy);
}

small,
figcaption,
caption{
    font-size:var(--tkm-text-xs);
    line-height:var(--tkm-line-ui);
}

code,
kbd,
samp,
pre{
    font-family:var(--tkm-font-mono)!important;
}

.btn,
.button,
.site-header .nav a,
.site-header .header-actions a,
.site-header button,
.site-footer a,
.footer-premium a,
.member-btn,
.admin-btn,
.mod-btn,
.learning-channel-search button,
.forum-btn,
.documents-qms a,
.documents-qms button{
    font-size:var(--tkm-text-sm)!important;
    line-height:var(--tkm-line-ui)!important;
    letter-spacing:0!important;
}

.breadcrumb,
.page-entry__breadcrumbs,
.lesson-player-breadcrumbs,
.documents-qms__breadcrumb,
.forum-breadcrumb,
.about-breadcrumb,
.learning-catalog-head__breadcrumb{
    font-size:var(--tkm-text-sm)!important;
    line-height:var(--tkm-line-ui)!important;
}

.page-entry__eyebrow,
.member-eyebrow,
.learning-eyebrow,
.documents-qms__eyebrow,
.lesson-watch-header__eyebrow,
.forum-eyebrow,
.about-hero__eyebrow,
.admin-panel__head>div:first-child>span,
.admin-nav-section h4,
.mod-nav h2,
.home-v7-panel-head>div>span,
.home-v4-platform-rail small,
.home-v5-ecosystem-card__label,
.home-v9-eyebrow{
    font-size:var(--tkm-text-xs)!important;
    line-height:1.32!important;
    letter-spacing:var(--tkm-letter-overline)!important;
}

.page-entry__title,
[data-page-entry] h1,
.about-document h1,
.faq-document h1,
.legal-document h1{
    max-width:min(15ch,100%);
    font-size:clamp(2.05rem,4.25vw,3.65rem)!important;
    line-height:1.04!important;
}

.page-entry__description,
.page-entry__copy>p,
.about-opening__copy,
.about-section p,
.faq-document p,
.legal-document p{
    max-width:72ch;
    font-size:var(--tkm-text-base)!important;
    line-height:var(--tkm-line-copy)!important;
}

body.is-homepage .home-hero__copy h1,
body.is-homepage .home-v8-hero h1,
body.is-homepage .home-v9-hero h1,
body.is-homepage .home-v10-hero h1{
    max-width:13ch;
    font-size:var(--tkm-text-display)!important;
    line-height:1.04!important;
}

body.is-homepage :is(.home-v2-story__intro h2,.home-v2-faq header h2,.home-v2-final h2,.home-v3-security__copy h2,.home-v3-membership__heading h2,.home-v6-trust__header h2,.home-v10-security h2,.home-v10-membership h2,.home-v10-ecosystem h2){
    font-size:clamp(1.8rem,3vw,2.8rem)!important;
    line-height:1.12!important;
}

body.is-homepage :is(.home-v2-story__intro p,.home-v2-faq header p,.home-v3-security__copy p,.home-v3-membership__heading p,.home-v10-security p,.home-v10-membership p){
    font-size:var(--tkm-text-base)!important;
    line-height:var(--tkm-line-copy)!important;
}

.home-hero__copy p,
.home-v8-hero p,
.home-v9-hero p,
.home-v10-hero p{
    max-width:64ch;
    font-size:var(--tkm-text-md)!important;
    line-height:1.58!important;
}

.learning-catalog-head__intro h1,
.learning-course-head h1,
.learning-library__header h2{
    font-size:clamp(1.9rem,3.3vw,3rem)!important;
    line-height:1.12!important;
}

.learning-channel :is(p,li,dd),
.learning-card p,
.course-card p{
    font-size:var(--tkm-text-sm)!important;
    line-height:1.56!important;
}

.lesson-player-shell{
    font-size:var(--tkm-text-base);
}

.lesson-watch-header__copy h1{
    max-width:100%;
    font-size:clamp(1.18rem,2vw,1.62rem)!important;
    line-height:1.2!important;
}

.lesson-watch-header__copy p,
.lesson-player-entry__meta,
.lesson-player-status,
.lesson-description,
.lesson-materials,
.lesson-next-list{
    font-size:var(--tkm-text-sm)!important;
    line-height:1.54!important;
}

.lesson-progress-panel__value strong,
.lesson-progress-summary strong{
    font-size:clamp(1.24rem,2vw,1.75rem)!important;
    line-height:1.05!important;
}

.lesson-next-card h3,
.lesson-materials h2,
.lesson-description h2{
    font-size:var(--tkm-text-lg)!important;
    line-height:1.22!important;
}

.documents-qms{
    font-size:var(--tkm-text-sm);
}

.documents-qms__header h1{
    max-width:48rem;
    font-size:clamp(1.45rem,2.7vw,2.25rem)!important;
    line-height:1.18!important;
}

.documents-qms__header p,
.documents-sector__links a,
.documents-common-card p,
.document-list-table,
.document-category-card p{
    font-size:var(--tkm-text-sm)!important;
    line-height:1.48!important;
}

.documents-sector__head h2,
.documents-common-card h2,
.document-category-card h2{
    font-size:var(--tkm-text-md)!important;
    line-height:1.24!important;
}

.forum-shell,
.forum-page,
.forum-topic,
.forum-card{
    font-size:var(--tkm-text-base);
}

.forum-shell h1,
.forum-page h1,
.forum-topic h1{
    font-size:clamp(1.9rem,3.2vw,3.05rem)!important;
    line-height:1.12!important;
}

.forum-shell :is(p,li,.forum-topic-card__excerpt,.forum-comment__body,.forum-meta),
.forum-form :is(label,input,textarea,select){
    font-size:var(--tkm-text-sm)!important;
    line-height:1.56!important;
}

.member-shell,
.member-main,
.member-panel,
.member-card,
.member-form{
    font-size:var(--tkm-text-base);
}

.member-shell h1,
.member-profile-preview h1,
.member-profile-preview h2,
.member-page-title{
    font-size:clamp(1.55rem,2.8vw,2.35rem)!important;
    line-height:1.16!important;
}

.member-shell h2,
.member-panel__head h2,
.member-dashboard-points__summary h3,
.member-achievement-hero h2{
    font-size:clamp(1.28rem,2.2vw,1.9rem)!important;
    line-height:1.18!important;
}

.member-shell :is(p,li,dd,label,input,textarea,select,.member-muted,.member-meta,.member-status),
.member-card p,
.member-panel p{
    font-size:var(--tkm-text-sm)!important;
    line-height:1.55!important;
}

.member-shell :is(small,.member-eyebrow,.member-kicker,.member-tabs a,.member-bottom-nav a span){
    font-size:var(--tkm-text-xs)!important;
    line-height:1.34!important;
}

.member-achievement-kpis strong,
.member-achievement-stats strong,
.member-dashboard-points__facts strong{
    font-size:clamp(1.18rem,2vw,1.55rem)!important;
}

.admin-body,
.mod-body{
    font-size:var(--tkm-text-sm);
    line-height:1.52;
}

.admin-body :is(h1,.page-entry__title),
.mod-body :is(h1,.page-entry__title){
    font-size:clamp(1.55rem,2vw,2.1rem)!important;
    line-height:1.18!important;
    max-width:100%;
}

.admin-body h2,
.admin-panel__head h2,
.mod-body h2,
.mod-panel h2{
    font-size:clamp(1.1rem,1.35vw,1.38rem)!important;
    line-height:1.24!important;
}

.admin-body h3,
.mod-body h3{
    font-size:var(--tkm-text-lg)!important;
}

.admin-body :is(p,li,td,th,label,input,textarea,select,button,.admin-table,.admin-meta,.admin-empty,.admin-top__title small,.admin-nav-link span,.admin-command__group small),
.mod-body :is(p,li,td,th,label,input,textarea,select,button,.mod-table,.mod-meta,.mod-nav a span,.mod-nav small){
    font-size:var(--tkm-text-sm)!important;
    line-height:1.48!important;
}

.admin-body :is(small,.admin-nav-section h4,.admin-stat-label,.stat__footer,.admin-period-meta,.admin-alert-button b),
.mod-body :is(small,.mod-nav h2,.mod-kicker,.mod-badge){
    font-size:var(--tkm-text-xs)!important;
    line-height:1.32!important;
}

.stat strong,
.admin-kpi strong,
.mod-kpi strong{
    font-size:clamp(1.55rem,2.4vw,2.05rem)!important;
    line-height:1.05!important;
}

.site-header,
.mobile-drawer,
.site-footer,
.footer-premium{
    font-size:var(--tkm-text-sm);
}

.site-header .brand-home-lockup strong,
.site-header .brand-home-lockup span{
    letter-spacing:.08em!important;
}

.site-header .brand-home-lockup strong{
    font-size:.72rem!important;
    line-height:1.1!important;
}

.site-header .brand-home-lockup span{
    font-size:.82rem!important;
    line-height:1.08!important;
}

.site-header .brand-home-lockup small{
    font-size:.72rem!important;
    line-height:1.15!important;
    letter-spacing:.04em!important;
}

.site-footer :is(p,li,small,span),
.footer-premium :is(p,li,small,span),
.footer-bottom :is(p,span,small){
    font-size:var(--tkm-text-xs)!important;
    line-height:1.48!important;
}

.site-footer h2,
.site-footer h3,
.footer-premium h2,
.footer-premium h3{
    font-size:var(--tkm-text-sm)!important;
    line-height:1.3!important;
}

.site-footer :is(strong,em,dt,dd,time),
.footer-premium :is(strong,em,dt,dd,time),
.footer-bottom :is(strong,em,dt,dd,time){
    font-size:var(--tkm-text-xs)!important;
    line-height:1.48!important;
}

.calendar-page,
.calendar-board,
.calendar-shell{
    font-size:var(--tkm-text-base);
}

.calendar-page h1,
.calendar-shell h1{
    font-size:clamp(1.8rem,3vw,2.75rem)!important;
}

.calendar-page :is(p,li,button,input,select,.calendar-event,.calendar-day),
.calendar-shell :is(p,li,button,input,select,.calendar-event,.calendar-day){
    font-size:var(--tkm-text-sm)!important;
    line-height:1.48!important;
}

.calendar-page :is(span,strong,small,time,dt,dd),
.calendar-shell :is(span,strong,small,time,dt,dd),
.calendar-board :is(span,strong,small,time,dt,dd),
.calendar-grid :is(span,strong,small,time,dt,dd){
    font-size:var(--tkm-text-xs)!important;
    line-height:1.44!important;
}

.about-opening :is(p,span,strong,a),
.about-index :is(a,strong,span),
.about-mobile-index :is(a,strong,span),
.faq-document :is(a,strong,span),
.legal-document :is(a,strong,span){
    font-size:var(--tkm-text-sm)!important;
    line-height:1.56!important;
}

.forum-shell :is(dt,dd,time,small,em,strong),
.forum-page :is(dt,dd,time,small,em,strong),
.forum-topic :is(dt,dd,time,small,em,strong),
.forum-panel__header>span,
.forum-topic-tags span{
    font-size:var(--tkm-text-xs)!important;
    line-height:1.45!important;
}

.forum-shell :is(article a,.forum-topic-list a,.forum-panel a),
.forum-page :is(article a,.forum-topic-list a,.forum-panel a){
    line-height:1.36!important;
}

table{
    font-size:var(--tkm-text-sm);
    line-height:1.48;
}

th,
td{
    line-height:1.45;
}

@media (max-width:760px){
    h1{font-size:clamp(1.78rem,7.2vw,2.5rem)!important;}
    h2{font-size:clamp(1.42rem,5.4vw,2rem)!important;}
    h3{font-size:clamp(1.16rem,4.2vw,1.45rem)!important;}

    .page-entry__title,
    [data-page-entry] h1,
    .about-document h1,
    .faq-document h1,
    .legal-document h1{
        max-width:100%;
        font-size:clamp(1.74rem,8.2vw,2.55rem)!important;
        line-height:1.08!important;
    }

    body.is-homepage .home-hero__copy h1,
    body.is-homepage .home-v8-hero h1,
    body.is-homepage .home-v9-hero h1,
    body.is-homepage .home-v10-hero h1{
        font-size:clamp(2rem,9.2vw,3rem)!important;
        line-height:1.08!important;
    }

    .lesson-watch-header__copy h1{
        font-size:clamp(1.12rem,5.2vw,1.55rem)!important;
    }

    .documents-qms__header h1{
        font-size:clamp(1.32rem,5vw,1.85rem)!important;
    }

    .member-shell h1,
    .member-profile-preview h1,
    .member-profile-preview h2,
    .member-page-title{
        font-size:clamp(1.4rem,6vw,1.9rem)!important;
    }

    .admin-body :is(h1,.page-entry__title),
    .mod-body :is(h1,.page-entry__title){
        font-size:clamp(1.36rem,5.5vw,1.82rem)!important;
    }

    .site-header .nav a,
    .mobile-drawer a,
    .member-bottom-nav a{
        font-size:var(--tkm-text-xs)!important;
    }
}

/* Homepage hero title: keep the compact slogan as a single premium line. */
body.is-homepage .home-v9-hero #home-hero-title{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(2.25rem,3.05vw,3rem)!important;
    line-height:1.04!important;
    letter-spacing:0!important;
    text-transform:none!important;
    white-space:nowrap!important;
}

body.is-homepage .home-v9-hero #home-hero-title span{
    display:inline!important;
    max-width:none!important;
    white-space:nowrap!important;
}

body.is-homepage .home-v9-hero__title-highlight{
    color:var(--home-gold)!important;
}

@media (max-width:760px){
    body.is-homepage .home-v9-hero #home-hero-title{
        width:100%!important;
        max-width:100%!important;
        font-size:clamp(1.45rem,6.7vw,2rem)!important;
        line-height:1.05!important;
        letter-spacing:0!important;
        white-space:nowrap!important;
    }

    body.is-homepage .home-v9-hero #home-hero-title span{
        max-width:none!important;
        white-space:nowrap!important;
    }
}

.calendar-event :is(strong,em),
.upcoming-panel a :is(strong,em),
.member-event span :is(strong,em),
.member-list-row__body :is(strong,a,time),
.admin-body :is(.admin-table a,.admin-table strong,.admin-detail-list strong,.admin-launch-card a,.admin-module-tabs a),
.mod-body :is(.mod-record-primary strong,.mod-comment-copy small,.mod-data-list strong,.mod-table a,.mod-table strong){
    min-width:0;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere;
}

.calendar-event strong,
.upcoming-panel a strong,
.member-event span strong{
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
    overflow:hidden!important;
}

.member-featured-badge-option small,
.member-setting-card small,
.documents-qms :is(.documents-sector__links a,.documents-common-card p,.document-category-card p),
.admin-body :is(.admin-form label,.field label,.lesson-material-drop strong,.lesson-uploader footer span){
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere;
}

.home-v9-footer__legal{
    min-width:0;
}

.home-v9-footer__legal > span:not(.home-v9-footer__created){
    min-width:0;
}

.home-v9-footer__created{
    min-width:0;
    flex-wrap:nowrap;
}

@media (max-width:700px){
    .home-v9-footer__legal{
        min-width:0;
    }

    .home-v9-footer__legal > span,
    .home-v9-footer__created{
        min-width:0;
    }
}

@media (max-width:420px){
    :root{
        --tkm-text-base:.95rem;
        --tkm-text-sm:.86rem;
        --tkm-text-xs:.76rem;
    }

    .page-entry__eyebrow,
    .member-eyebrow,
    .learning-eyebrow,
    .documents-qms__eyebrow,
    .lesson-watch-header__eyebrow,
    .forum-eyebrow{
        font-size:.72rem!important;
        letter-spacing:.08em!important;
    }
}

.site-header :is(.brand-home-lockup strong,.brand-home-lockup span,.brand-home-lockup small),
.site-header :is(.header-action-label,.nav span){
    font-size:max(.75rem,.86em)!important;
    line-height:1.22!important;
}

.site-footer :is(small,span,strong,em,dt,dd,time,a),
.footer-premium :is(small,span,strong,em,dt,dd,time,a),
.footer-bottom :is(small,span,strong,em,dt,dd,time,a){
    font-size:max(.75rem,.88em)!important;
    line-height:1.48!important;
}

.home-v9-section-tag,
.home-v14-community__eyebrow,
.home-v14-community small,
.home-v14-community span,
.home-v9-testimonial small,
.home-v9 :is(.home-v9-meta,.home-v9-card small,.home-v9-card span){
    font-size:max(.75rem,.86em)!important;
    line-height:1.44!important;
}

.auth-shell :is(small,.meta,.eyebrow,.check span),
.auth-card :is(small,.meta,label,a){
    font-size:max(.75rem,.88em)!important;
    line-height:1.48!important;
}

.forum-page :is(span,small,time,em,dt,dd,.forum-section-kicker,.forum-topic__category,.forum-topic-tags span),
.forum-shell :is(span,small,time,em,dt,dd,.forum-section-kicker,.forum-topic__category,.forum-topic-tags span),
.forum-topic :is(span,small,time,em,dt,dd,.forum-section-kicker,.forum-topic__category,.forum-topic-tags span){
    font-size:max(.75rem,.88em)!important;
    line-height:1.48!important;
}

.forum-page :is(article a,.forum-topic-list a,.forum-panel a,.forum-topic-row a),
.forum-shell :is(article a,.forum-topic-list a,.forum-panel a,.forum-topic-row a){
    line-height:1.42!important;
}

.calendar-page :is(span,strong,small,time,dt,dd),
.calendar-shell :is(span,strong,small,time,dt,dd),
.calendar-board :is(span,strong,small,time,dt,dd),
.calendar-grid :is(span,strong,small,time,dt,dd){
    font-size:max(.75rem,.86em)!important;
    line-height:1.46!important;
}

.learning-channel :is(dt,dd,small,time,em,.learning-course-card__index,.learning-course-card__meta span,.learning-course-card__progress strong,.learning-course-card__progress small,.learning-course-card__category),
.learning-course :is(dt,dd,small,time,em,span),
.course-detail :is(dt,dd,small,time,em,span){
    font-size:max(.75rem,.86em)!important;
    line-height:1.48!important;
}

.lesson-player-shell :is(dt,dd,small,time,em,span,.lesson-player-entry__meta li,.lesson-progress-panel__value span){
    font-size:max(.75rem,.86em)!important;
    line-height:1.48!important;
}

.documents-qms :is(small,span,em,dt,dd,time,.documents-sector__links a,.documents-common-card small,.documents-common-card p,.document-category-card small,.document-category-card p),
.document-list-table :is(th,td,small,span,time){
    font-size:max(.75rem,.88em)!important;
    line-height:1.48!important;
}

.member-shell :is(small,dt,dd,time,em,kbd,summary,blockquote,.member-overline,.member-file-ext,.member-new,.member-meta span,.member-status,.member-tabs a,.member-bottom-nav a span),
.member-main :is(small,dt,dd,time,em,kbd,summary,blockquote,.member-overline,.member-file-ext,.member-new,.member-meta span,.member-status,.member-tabs a,.member-bottom-nav a span),
.member-panel :is(small,dt,dd,time,em,kbd,summary,blockquote,.member-overline,.member-file-ext,.member-new,.member-meta span,.member-status,.member-tabs a,.member-bottom-nav a span){
    font-size:max(.75rem,.86em)!important;
    line-height:1.48!important;
}

.admin-body :is(small,dt,dd,time,em,kbd,summary,blockquote,.admin-meta,.admin-table small,.admin-detail-list small,.admin-timeline small,.admin-nav-link small,.admin-command__group small),
.mod-body :is(small,dt,dd,time,em,kbd,summary,blockquote,.mod-meta,.mod-table small,.mod-record-primary small,.mod-comment-copy small,.mod-nav small){
    font-size:max(.75rem,.86em)!important;
    line-height:1.48!important;
}

.home-v9-brand-plate :is(strong,span,small),
.home-v9-proof small,
.home-v10-story__points small,
.home-v9-seo__topics span,
.home-v9-services :is(p,a),
.faq-page :is(.faq-eyebrow,.faq-section__intro a),
.forum-author p{
    font-size:.75rem!important;
    line-height:1.48!important;
}

.month-calendar__days span,
.month-calendar :is(.calendar-day header small,.calendar-event time,.calendar-event strong),
.upcoming-panel :is(span,time,small,strong){
    font-size:.75rem!important;
    line-height:1.46!important;
}

.lesson-materials__list :is(strong,small,span,a),
.lesson-next-lessons :is(p,a,span,strong,small){
    font-size:.75rem!important;
    line-height:1.48!important;
}

.account-profile-completion small,
.account-nav small,
.account-bottom-nav span,
.member-trust-strip small,
.member-metrics small,
.member-public-badges span,
.member-profile-preview dl span,
.member-field small,
.member-featured-badge-option small,
.member-course-kpis small,
.member-course-card :is(.member-meta span,small,time,.member-course-card__category,.member-course-card__last span,.member-course-card__lock span),
.member-course-resume :is(span,p),
.member-file-ext,
.member-achievement-kpis span,
.member-achievement-stats :is(span,small),
.member-level-flow small,
.member-badge-category-rail :is(span,small),
.member-locked-progress :is(li,span),
.member-quick-actions a,
.member-linked-settings :is(strong,small){
    font-size:.75rem!important;
    line-height:1.48!important;
}

.admin-module-tabs a,
.admin-mini-stats :is(span,strong,small),
.admin-launch-card :is(span,a),
.admin-switch :is(strong,small),
.stat__head span,
.page-entry__status,
.lesson-studio-stats span{
    font-size:.75rem!important;
    line-height:1.48!important;
}

.mod-record-primary :is(strong,small),
.mod-profile-menu :is(summary,span,a),
.mod-sidebar-foot :is(span,strong),
.mod-filter-bar span,
.mod-timeline strong,
.mod-panel-head span,
.mod-text-link,
.mod-button{
    font-size:.75rem!important;
    line-height:1.48!important;
}

.home-v9-brand-plate b,
.calendar-event em,
.member-event time span,
.member-quick-actions>span,
.member-profile-preview dl dd span,
.member-list-row__body time,
.member-achievement-hero__medal small,
.member-setting-card small,
.lesson-material-drop strong,
.lesson-uploader footer span{
    font-size:.75rem!important;
    line-height:1.48!important;
}

.upcoming-panel em,
.member-private-info dd span{
    font-size:.75rem!important;
    line-height:1.48!important;
}

/* Compact premium correction: keep headings restrained and dense UI from overflowing. */
:root{
    --tkm-text-2xs:clamp(.62rem,.6rem + .04vw,.68rem);
    --tkm-text-xs:clamp(.68rem,.65rem + .07vw,.75rem);
    --tkm-text-sm:clamp(.78rem,.74rem + .1vw,.88rem);
    --tkm-text-base:clamp(.9rem,.86rem + .12vw,.97rem);
    --tkm-text-md:clamp(.96rem,.9rem + .18vw,1.05rem);
    --tkm-text-lg:clamp(1.06rem,.98rem + .26vw,1.18rem);
    --tkm-text-xl:clamp(1.18rem,1.06rem + .42vw,1.42rem);
    --tkm-text-2xl:clamp(1.34rem,1.16rem + .62vw,1.7rem);
    --tkm-text-3xl:clamp(1.55rem,1.28rem + .9vw,2.06rem);
    --tkm-text-4xl:clamp(1.72rem,1.38rem + 1.08vw,2.32rem);
    --tkm-text-display:clamp(1.95rem,1.52rem + 1.35vw,3rem);
    --tkm-line-heading:1.12;
    --tkm-line-copy:1.54;
    --tkm-line-ui:1.3;
}

body,
.admin-body,
.mod-body{
    font-size:var(--tkm-text-base)!important;
    line-height:var(--tkm-line-copy)!important;
}

h1,h2,h3,h4,h5,h6,
.page-entry__title,
[data-page-entry] h1,
.forum-shell h1,
.forum-page h1,
.forum-topic h1,
.member-shell h1,
.member-profile-preview h1,
.member-profile-preview h2,
.member-page-title,
.admin-body :is(h1,.page-entry__title),
.mod-body :is(h1,.page-entry__title){
    max-width:100%!important;
    overflow-wrap:anywhere;
    word-break:normal;
    hyphens:auto;
}

h1{font-size:var(--tkm-text-4xl)!important;}
h2{font-size:var(--tkm-text-3xl)!important;}
h3{font-size:var(--tkm-text-xl)!important;}
h4{font-size:var(--tkm-text-lg)!important;}

.page-entry__title,
[data-page-entry] h1,
.about-document h1,
.faq-document h1,
.legal-document h1{
    font-size:clamp(1.55rem,2.6vw,2.3rem)!important;
    line-height:1.1!important;
}

body.is-homepage .home-hero__copy h1,
body.is-homepage .home-v8-hero h1,
body.is-homepage .home-v9-hero h1,
body.is-homepage .home-v10-hero h1{
    max-width:15ch!important;
    font-size:clamp(1.9rem,3.4vw,3rem)!important;
    line-height:1.08!important;
}

body.is-homepage :is(.home-v2-story__intro h2,.home-v2-faq header h2,.home-v2-final h2,.home-v3-security__copy h2,.home-v3-membership__heading h2,.home-v6-trust__header h2,.home-v10-security h2,.home-v10-membership h2,.home-v10-ecosystem h2){
    font-size:clamp(1.32rem,1.9vw,1.95rem)!important;
}

.learning-catalog-head__intro h1,
.learning-course-head h1,
.learning-library__header h2,
.forum-shell h1,
.forum-page h1,
.forum-topic h1,
.calendar-page h1,
.calendar-shell h1{
    font-size:clamp(1.36rem,2vw,2.05rem)!important;
    line-height:1.12!important;
}

.member-shell h1,
.member-profile-preview h1,
.member-profile-preview h2,
.member-page-title{
    font-size:clamp(1.2rem,1.8vw,1.7rem)!important;
}

.member-shell h2,
.member-panel__head h2,
.member-dashboard-points__summary h3,
.member-achievement-hero h2{
    font-size:clamp(1.02rem,1.35vw,1.35rem)!important;
}

.admin-body :is(h1,.page-entry__title),
.mod-body :is(h1,.page-entry__title){
    font-size:clamp(1.18rem,1.45vw,1.6rem)!important;
}

.admin-body h2,
.admin-panel__head h2,
.mod-body h2,
.mod-panel h2{
    font-size:clamp(.98rem,1vw,1.12rem)!important;
}

.btn,
.button,
.site-header .nav a,
.site-header .header-actions a,
.site-header button,
.member-btn,
.admin-btn,
.mod-btn,
.forum-button,
.forum-btn,
.learning-channel-search button{
    min-width:0;
    font-size:var(--tkm-text-sm)!important;
    line-height:1.22!important;
    white-space:normal;
}

.site-header :is(.brand-home-lockup strong,.brand-home-lockup span,.brand-home-lockup small),
.site-header :is(.header-action-label,.nav span),
.site-footer :is(small,span,strong,em,dt,dd,time,a),
.footer-premium :is(small,span,strong,em,dt,dd,time,a),
.footer-bottom :is(small,span,strong,em,dt,dd,time,a),
.home-v9-brand-plate :is(strong,span,small,b),
.home-v9-proof small,
.home-v10-story__points small,
.home-v9-seo__topics span,
.home-v9-services :is(p,a),
.faq-page :is(.faq-eyebrow,.faq-section__intro a),
.forum-page :is(span,small,time,em,dt,dd,.forum-section-kicker,.forum-topic__category,.forum-topic-tags span),
.forum-shell :is(span,small,time,em,dt,dd,.forum-section-kicker,.forum-topic__category,.forum-topic-tags span),
.forum-topic :is(span,small,time,em,dt,dd,.forum-section-kicker,.forum-topic__category,.forum-topic-tags span),
.calendar-page :is(span,strong,small,time,dt,dd,em),
.calendar-shell :is(span,strong,small,time,dt,dd,em),
.calendar-board :is(span,strong,small,time,dt,dd,em),
.calendar-grid :is(span,strong,small,time,dt,dd,em),
.upcoming-panel :is(span,time,small,strong,em),
.learning-channel :is(dt,dd,small,time,em,.learning-course-card__index,.learning-course-card__meta span,.learning-course-card__progress strong,.learning-course-card__progress small,.learning-course-card__category),
.lesson-player-shell :is(dt,dd,small,time,em,span,.lesson-player-entry__meta li,.lesson-progress-panel__value span),
.documents-qms :is(small,span,em,dt,dd,time,.documents-sector__links a,.documents-common-card small,.documents-common-card p,.document-category-card small,.document-category-card p),
.document-list-table :is(th,td,small,span,time),
.member-shell :is(small,dt,dd,time,em,kbd,summary,blockquote,.member-overline,.member-file-ext,.member-new,.member-meta span,.member-status,.member-tabs a,.member-bottom-nav a span),
.member-main :is(small,dt,dd,time,em,kbd,summary,blockquote,.member-overline,.member-file-ext,.member-new,.member-meta span,.member-status,.member-tabs a,.member-bottom-nav a span),
.member-panel :is(small,dt,dd,time,em,kbd,summary,blockquote,.member-overline,.member-file-ext,.member-new,.member-meta span,.member-status,.member-tabs a,.member-bottom-nav a span),
.account-profile-completion small,
.account-nav small,
.account-bottom-nav span,
.member-trust-strip small,
.member-metrics small,
.member-public-badges span,
.member-profile-preview dl span,
.member-private-info dd span,
.member-field small,
.member-featured-badge-option small,
.member-course-kpis small,
.member-course-card :is(.member-meta span,small,time,.member-course-card__category,.member-course-card__last span,.member-course-card__lock span),
.member-course-resume :is(span,p),
.member-achievement-kpis span,
.member-achievement-stats :is(span,small),
.member-achievement-hero__medal small,
.member-level-flow small,
.member-badge-category-rail :is(span,small),
.member-locked-progress :is(li,span),
.member-quick-actions a,
.member-setting-card small,
.member-linked-settings :is(strong,small),
.admin-body :is(small,dt,dd,time,em,kbd,summary,blockquote,.admin-meta,.admin-table small,.admin-detail-list small,.admin-timeline small,.admin-nav-link small,.admin-command__group small),
.admin-module-tabs a,
.admin-mini-stats :is(span,strong,small),
.admin-launch-card :is(span,a),
.admin-switch :is(strong,small),
.stat__head span,
.page-entry__status,
.lesson-studio-stats span,
.lesson-material-drop strong,
.lesson-uploader footer span,
.mod-body :is(small,dt,dd,time,em,kbd,summary,blockquote,.mod-meta,.mod-table small,.mod-record-primary small,.mod-comment-copy small,.mod-nav small),
.mod-record-primary :is(strong,small),
.mod-profile-menu :is(summary,span,a),
.mod-sidebar-foot :is(span,strong),
.mod-filter-bar span,
.mod-timeline strong,
.mod-panel-head span,
.mod-text-link,
.mod-button{
    font-size:var(--tkm-text-xs)!important;
    line-height:1.38!important;
}

.member-file-ext{
    font-size:var(--tkm-text-2xs)!important;
}

.forum-page :is(article a,.forum-topic-list a,.forum-panel a,.forum-topic-row a),
.forum-shell :is(article a,.forum-topic-list a,.forum-panel a,.forum-topic-row a),
.member-list-row__body :is(a,strong,h2),
.admin-table :is(a,strong),
.mod-table :is(a,strong){
    overflow-wrap:anywhere;
    min-width:0;
}

@media (max-width:760px){
    .page-entry__title,
    [data-page-entry] h1,
    .about-document h1,
    .faq-document h1,
    .legal-document h1{
        font-size:clamp(1.24rem,5.3vw,1.76rem)!important;
        line-height:1.12!important;
    }

    body.is-homepage .home-hero__copy h1,
    body.is-homepage .home-v8-hero h1,
    body.is-homepage .home-v9-hero h1,
    body.is-homepage .home-v10-hero h1{
        font-size:clamp(1.64rem,7.1vw,2.25rem)!important;
    }

    .learning-catalog-head__intro h1,
    .learning-course-head h1,
    .learning-library__header h2,
    .forum-shell h1,
    .forum-page h1,
    .forum-topic h1,
    .calendar-page h1,
    .calendar-shell h1{
        font-size:clamp(1.22rem,5vw,1.7rem)!important;
    }
}

/* Final compact overflow cleanup for hidden labels and narrow breadcrumb rows. */
.forum-sr-only{
    font-size:1px!important;
    line-height:1!important;
    letter-spacing:0!important;
    max-width:1px!important;
    min-width:1px!important;
}

@media (max-width:620px){
    .forum-breadcrumbs ol{
        flex-wrap:nowrap!important;
        min-width:0;
        overflow:hidden!important;
    }

    .forum-breadcrumbs li{
        min-width:0;
        overflow:hidden!important;
        white-space:normal!important;
    }

    .forum-breadcrumbs li:not(:last-child){
        flex:0 0 auto;
    }

    .forum-breadcrumbs li:last-child{
        flex:1 1 auto;
    }

    .forum-breadcrumbs :is(a,span){
        min-width:0;
    }

    .forum-breadcrumbs li:last-child :is(a,span){
        display:block;
        max-width:100%!important;
        overflow:hidden!important;
        text-overflow:ellipsis;
        white-space:nowrap!important;
    }
}

.account-bottom-nav__icon{
    display:inline-grid!important;
    place-items:center;
    width:34px;
    min-width:34px;
}

.account-bottom-nav__icon b{
    right:0!important;
}

.member-list-row__body .member-overline{
    max-width:100%;
    overflow:hidden!important;
    text-overflow:ellipsis;
    white-space:nowrap!important;
}

.admin-sidebar__brand{
    width:100%;
    max-width:100%;
    overflow:hidden!important;
}

.mod-brand{
    max-width:100%;
    overflow:hidden!important;
}

.admin-date-popover label{
    min-width:0;
    overflow:hidden!important;
}

/* Site-wide minimal typography calibration: optimize scale, not just wrapping. */
:root{
    --tkm-mini-body:.95rem;
    --tkm-mini-copy:.93rem;
    --tkm-mini-ui:.875rem;
    --tkm-mini-meta:.78rem;
    --tkm-mini-card-title:1rem;
    --tkm-mini-panel-title:1.125rem;
    --tkm-mini-section-title:clamp(1.35rem,1.18rem + .55vw,1.7rem);
    --tkm-mini-page-title:clamp(1.75rem,1.48rem + .9vw,2.25rem);
    --tkm-mini-hero-title:clamp(2.05rem,1.65rem + 1.45vw,3rem);
}

body,
.admin-body,
.mod-body{
    font-size:var(--tkm-mini-body)!important;
}

h1,h2,h3,h4,h5,h6,
.page-entry__title,
[data-page-entry] h1,
.home-v9-services h2,
.learning-course-card h3,
.forum-page :is(h1,h2,h3,h4),
.calendar-page :is(h1,h2,h3,h4),
.documents-qms :is(h1,h2,h3,h4),
.member-shell :is(h1,h2,h3,h4),
.admin-body :is(h1,h2,h3,h4),
.mod-body :is(h1,h2,h3,h4){
    letter-spacing:0!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
}

h1{font-size:var(--tkm-mini-page-title)!important;line-height:1.12!important;}
h2{font-size:var(--tkm-mini-section-title)!important;line-height:1.15!important;}
h3{font-size:1.14rem!important;line-height:1.18!important;}
h4{font-size:1rem!important;line-height:1.22!important;}

.page-entry__title,
[data-page-entry] h1,
.about-document h1,
.faq-document h1,
.legal-document h1{
    font-size:var(--tkm-mini-page-title)!important;
    line-height:1.12!important;
    max-width:22ch!important;
}

body.is-homepage .home-hero__copy h1,
body.is-homepage .home-v8-hero h1,
body.is-homepage .home-v9-hero h1,
body.is-homepage .home-v10-hero h1{
    font-size:var(--tkm-mini-hero-title)!important;
    line-height:1.08!important;
    max-width:15ch!important;
}

body.is-homepage :is(.home-v10-story__copy h2,.home-v14-community__intro h2,.home-v9-seo__intro h2,.home-v9-faq__intro h2,.home-v2-story__intro h2,.home-v2-faq header h2,.home-v2-final h2,.home-v3-security__copy h2,.home-v3-membership__heading h2,.home-v6-trust__header h2,.home-v10-security h2,.home-v10-membership h2,.home-v10-ecosystem h2){
    font-size:var(--tkm-mini-section-title)!important;
    line-height:1.14!important;
    letter-spacing:0!important;
}

body.is-homepage :is(.home-v9-hero__copy>p,.home-v10-story__copy>p,.home-v10-story__statement,.home-v9-seo__content p,.home-v9-faq__intro p),
.about-document :is(p,li),
.faq-page :is(p,li),
.legal-document :is(p,li),
.forum-richtext,
.documents-category-page__hero p,
.documents-document-card p,
.learning-course-card__body>p,
.lesson-reading__main>p{
    font-size:var(--tkm-mini-copy)!important;
    line-height:1.58!important;
}

.home-v9-services h2{
    margin-top:18px!important;
    margin-bottom:8px!important;
    font-size:var(--tkm-mini-card-title)!important;
    line-height:1.16!important;
    max-width:18ch;
}

.home-v9-services p{
    font-size:.76rem!important;
    line-height:1.45!important;
}

.home-v9-services a,
.home-v9-button,
.page-entry__button,
.btn,
.button,
.forum-button,
.forum-btn,
.member-btn,
.admin-btn,
.mod-btn{
    font-size:var(--tkm-mini-ui)!important;
    line-height:1.18!important;
    letter-spacing:0!important;
}

.home-v9-brand-plate{
    width:260px!important;
    height:82px!important;
    gap:10px!important;
    padding:10px!important;
}

.home-v9-brand-plate img{
    width:58px!important;
    height:58px!important;
    flex:0 0 58px;
}

.home-v9-brand-plate>span{
    min-width:0;
    line-height:1.05!important;
}

.home-v9-brand-plate>span strong{
    font-size:.58rem!important;
    letter-spacing:0!important;
}

.home-v9-brand-plate>span b{
    margin-top:4px!important;
    font-size:.68rem!important;
    letter-spacing:0!important;
}

.home-v9-brand-plate>span small{
    margin-top:4px!important;
    font-size:.43rem!important;
    letter-spacing:0!important;
}

.home-v9-section-tag,
.home-v9-eyebrow,
.forum-eyebrow,
.forum-section-kicker,
.documents-qms__eyebrow,
.member-eyebrow,
.member-overline,
.admin-panel__head>div:first-child>span,
.mod-kicker{
    font-size:var(--tkm-mini-meta)!important;
    line-height:1.25!important;
    letter-spacing:.04em!important;
}

.learning-catalog-head__intro h1,
.learning-course-head h1,
.learning-library__header h2,
.forum-simple-heading h1,
.forum-search-heading h1,
.forum-access-heading h1,
.forum-compose-heading h1,
.forum-category-hero__copy h1,
.forum-topic__header h1,
.calendar-page h1,
.calendar-shell h1,
.documents-qms__header h1,
.documents-category-page__hero h1{
    font-size:var(--tkm-mini-page-title)!important;
    line-height:1.12!important;
    letter-spacing:0!important;
}

.learning-course-card h3,
.learning-course-card:not(.learning-course-card--featured) h3{
    max-width:24ch!important;
    font-size:1.18rem!important;
    line-height:1.16!important;
    letter-spacing:0!important;
}

.learning-course-card--featured h3{
    font-size:1.32rem!important;
}

.forum-panel__header h2,
.forum-topic-aside :is(h2,h3),
.forum-aside-card :is(h2,h3),
.forum-home-aside :is(h2,h3),
.forum-filter-heading h2,
.forum-comments__header h2,
.forum-empty :is(h2,h3),
.forum-access-card h2,
.forum-access-aside h2,
.calendar-toolbar h2,
.upcoming-panel h2,
.documents-library__head h2,
.member-panel__head h2,
.member-dashboard-points__summary h3,
.member-achievement-hero h2,
.admin-panel__head h2,
.mod-panel h2{
    font-size:var(--tkm-mini-panel-title)!important;
    line-height:1.18!important;
    letter-spacing:0!important;
}

.forum-category-row__body h3,
.forum-topic-row__main h3,
.forum-draft-row h3,
.forum-requirements h3,
.documents-document-card h2,
.member-list-row__body :is(h2,h3),
.member-course-card h2,
.member-setting-card h2,
.admin-table :is(a,strong),
.mod-table :is(a,strong){
    font-size:.92rem!important;
    line-height:1.24!important;
    letter-spacing:0!important;
}

.forum-richtext h2{font-size:1.18rem!important;}
.forum-richtext h3{font-size:1.04rem!important;}
.forum-richtext p,
.forum-richtext li{
    font-size:.9rem!important;
    line-height:1.58!important;
}

.calendar-event strong{
    font-size:.52rem!important;
    line-height:1.12!important;
}

.upcoming-panel a span>strong{
    font-size:.72rem!important;
    line-height:1.25!important;
}

.documents-qms__portal strong{
    font-size:.92rem!important;
    letter-spacing:0!important;
}

.documents-type strong,
.documents-sector__head h2{
    font-size:.66rem!important;
    line-height:1.18!important;
    letter-spacing:0!important;
}

.member-shell h1,
.member-profile-preview h1,
.member-profile-preview h2,
.member-page-title{
    font-size:1.42rem!important;
    line-height:1.16!important;
    letter-spacing:0!important;
}

.admin-body :is(h1,.page-entry__title),
.mod-body :is(h1,.page-entry__title){
    font-size:1.34rem!important;
    line-height:1.18!important;
}

.site-header :is(.brand-home-lockup strong,.brand-home-lockup span,.brand-home-lockup small),
.home-v9-footer__brand :is(strong,b,small),
.footer-brand-panel__copy :is(strong,span),
.site-footer :is(a,p,span,strong,small),
.footer-bottom :is(a,p,span,strong,small){
    letter-spacing:0!important;
}

@media (max-width:760px){
    :root{
        --tkm-mini-body:.89rem;
        --tkm-mini-copy:.82rem;
        --tkm-mini-ui:.74rem;
        --tkm-mini-meta:.62rem;
        --tkm-mini-card-title:.92rem;
        --tkm-mini-panel-title:1rem;
        --tkm-mini-section-title:1.34rem;
        --tkm-mini-page-title:1.5rem;
        --tkm-mini-hero-title:1.9rem;
    }

    h1{font-size:var(--tkm-mini-page-title)!important;}
    h2{font-size:var(--tkm-mini-section-title)!important;}
    h3{font-size:1.02rem!important;}

    body.is-homepage .home-hero__copy h1,
    body.is-homepage .home-v8-hero h1,
    body.is-homepage .home-v9-hero h1,
    body.is-homepage .home-v10-hero h1{
        font-size:var(--tkm-mini-hero-title)!important;
        max-width:13ch!important;
    }

    .home-v9-services h2{
        font-size:var(--tkm-mini-card-title)!important;
        line-height:1.14!important;
        max-width:15ch;
    }

    .home-v9-services p{
        font-size:.72rem!important;
        line-height:1.4!important;
    }

    .home-v9-brand-plate{
        top:calc(var(--home-v9-media-height) - 78px)!important;
        right:10px!important;
        width:212px!important;
        height:68px!important;
        gap:8px!important;
        padding:8px!important;
        border-radius:10px!important;
    }

    .home-v9-brand-plate img{
        width:50px!important;
        height:50px!important;
        flex-basis:50px;
    }

    .home-v9-brand-plate>span strong{font-size:.52rem!important;}
    .home-v9-brand-plate>span b{font-size:.58rem!important;}
    .home-v9-brand-plate>span small{font-size:.38rem!important;}

    .learning-course-card h3,
    .learning-course-card--featured h3,
    .learning-course-card:not(.learning-course-card--featured) h3{
        font-size:1.06rem!important;
        line-height:1.16!important;
    }

    .forum-category-row__body h3,
    .forum-topic-row__main h3{
        font-size:.9rem!important;
        line-height:1.22!important;
    }

    .forum-topic__header h1,
    .forum-category-hero__copy h1,
    .forum-search-heading h1,
    .documents-qms__header h1,
    .documents-category-page__hero h1,
    .learning-catalog-head__intro h1,
    .learning-library__header h2{
        font-size:var(--tkm-mini-page-title)!important;
        line-height:1.14!important;
    }

    .about-document h1,
    .about-section h2,
    .about-section__lead,
    .about-section__quote p{
        font-size:var(--tkm-mini-section-title)!important;
        line-height:1.15!important;
    }
}

/* Final minimal pass: keep oversized modules inside the global type scale. */
body.is-homepage .home-hero__copy h1,
body.is-homepage .home-v8-hero h1,
body.is-homepage .home-v9-hero h1,
body.is-homepage .home-v10-hero h1{
    font-size:2.18rem!important;
    line-height:1.06!important;
    max-width:14ch!important;
}

.member-progress-overview h2,
#progress-overview-title,
.member-dashboard-points__facts strong{
    font-size:1.58rem!important;
    line-height:1.05!important;
}

.member-progress-overview dd,
.member-dashboard-points__summary h3{
    font-size:1.05rem!important;
    line-height:1.14!important;
}

.member-list-row__body :is(h2,h3,h4){
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
}

@media (max-width:760px){
    body.is-homepage .home-hero__copy h1,
    body.is-homepage .home-v8-hero h1,
    body.is-homepage .home-v9-hero h1,
    body.is-homepage .home-v10-hero h1{
        font-size:1.62rem!important;
        line-height:1.08!important;
        max-width:15ch!important;
    }

    .member-progress-overview h2,
    #progress-overview-title,
    .member-dashboard-points__facts strong{
        font-size:1.36rem!important;
    }

    .member-upcoming-row{
        grid-template-columns:44px minmax(0,1fr)!important;
        align-items:start!important;
        gap:10px!important;
    }

    .member-upcoming-row>time{
        width:44px!important;
        height:52px!important;
        grid-column:1!important;
    }

    .member-upcoming-row>time strong{
        font-size:1rem!important;
    }

    .member-upcoming-row .member-list-row__body{
        grid-column:2!important;
        min-width:0!important;
        width:100%!important;
    }

    .member-upcoming-row .member-list-row__body h2{
        display:block!important;
        width:100%!important;
        font-size:.9rem!important;
        line-height:1.2!important;
        white-space:normal!important;
        overflow:visible!important;
        text-overflow:clip!important;
    }

    .member-upcoming-row .member-list-row__actions{
        grid-column:1 / -1!important;
        width:100%!important;
        display:grid!important;
        grid-template-columns:repeat(auto-fit,minmax(118px,1fr))!important;
        justify-content:stretch!important;
        gap:8px!important;
    }

    .member-upcoming-row .member-list-row__actions :is(a,button,.member-status){
        width:100%!important;
        justify-content:center!important;
    }
}

/* Typography audit refinement: long editorial headings should read compact. */
body.is-homepage .home-hero__copy h1,
body.is-homepage .home-v8-hero h1,
body.is-homepage .home-v9-hero h1,
body.is-homepage .home-v10-hero h1{
    font-size:1.92rem!important;
    line-height:1.12!important;
    max-width:16ch!important;
}

#home-seo-title,
.about-document h1,
.about-section h2,
.about-section__lead,
.about-section__quote p{
    font-size:1.22rem!important;
    line-height:1.18!important;
}

.forum-topic__header h1,
#forum-topic-title{
    font-size:1.14rem!important;
    line-height:1.2!important;
    max-width:34ch!important;
}

@media (max-width:760px){
    body.is-homepage .home-hero__copy h1,
    body.is-homepage .home-v8-hero h1,
    body.is-homepage .home-v9-hero h1,
    body.is-homepage .home-v10-hero h1{
        font-size:1.46rem!important;
        line-height:1.12!important;
        max-width:16ch!important;
    }

    #home-seo-title,
    .about-document h1,
    .about-section h2,
    .about-section__lead,
    .about-section__quote p{
        font-size:.95rem!important;
        line-height:1.2!important;
    }

    .forum-topic__header h1,
    #forum-topic-title{
        font-size:.94rem!important;
        line-height:1.22!important;
        max-width:100%!important;
    }
}

/* Site-wide icon legibility calibration. */
:root{
    --tkm-icon-meta:16px;
    --tkm-icon-inline:18px;
    --tkm-icon-button:20px;
    --tkm-icon-control:22px;
    --tkm-icon-card:24px;
    --tkm-icon-feature:32px;
    --tkm-icon-touch:44px;
}

:is(.bi,.ui-icon,.forum-icon,.member-svg-icon){
    flex:0 0 auto!important;
    line-height:1!important;
    vertical-align:-.14em!important;
}

.bi[class*="bi-"],
.ui-icon{
    width:1em!important;
    height:1em!important;
    min-width:1em!important;
    min-height:1em!important;
    font-size:max(1em,var(--tkm-icon-inline))!important;
}

.bi[class*="bi-"]::before{
    width:1em!important;
    height:1em!important;
    min-width:1em!important;
    min-height:1em!important;
    background-size:contain!important;
}

.forum-icon{
    width:max(var(--forum-icon-size,20px),var(--tkm-icon-inline))!important;
    height:max(var(--forum-icon-size,20px),var(--tkm-icon-inline))!important;
    min-width:max(var(--forum-icon-size,20px),var(--tkm-icon-inline))!important;
    min-height:max(var(--forum-icon-size,20px),var(--tkm-icon-inline))!important;
}

.member-svg-icon{
    width:max(1.2em,var(--tkm-icon-inline))!important;
    height:max(1.2em,var(--tkm-icon-inline))!important;
    min-width:max(1.2em,var(--tkm-icon-inline))!important;
    min-height:max(1.2em,var(--tkm-icon-inline))!important;
}

:is(.member-meta,.member-public-profile-meta,.member-breadcrumb,.member-status,.member-public-badges,.forum-status,.forum-topic__category,.forum-category-hero__stats,.forum-topic__meta,.documents-qms__breadcrumb,.footer-assurance,.footer-links,.footer-contact,.admin-period-meta,.admin-status,.mod-record-metrics,.lesson-demo-player__time) :is(.bi,.ui-icon,.forum-icon,.member-svg-icon){
    width:var(--tkm-icon-meta)!important;
    height:var(--tkm-icon-meta)!important;
    min-width:var(--tkm-icon-meta)!important;
    min-height:var(--tkm-icon-meta)!important;
    font-size:var(--tkm-icon-meta)!important;
}

:is(.btn,.member-btn,.forum-button,.footer-text-link,.admin-domain-nav a,.admin-calendar-views a,.admin-quick-menu a,.admin-profile-menu a,.admin-profile-menu button,.mod-queue-button,.member-quick-actions a,.member-linked-settings a,.lesson-order-status) :is(.bi,.ui-icon,.forum-icon,.member-svg-icon){
    width:var(--tkm-icon-button)!important;
    height:var(--tkm-icon-button)!important;
    min-width:var(--tkm-icon-button)!important;
    min-height:var(--tkm-icon-button)!important;
    font-size:var(--tkm-icon-button)!important;
}

:is(.icon-btn,.member-icon-btn,.forum-icon-action,.site-header .icon-btn,.site-header .menu-toggle,.mod-icon-button,.admin-week>article>header button,.lesson-demo-player__controls .lesson-demo-player__icon-btn,.lesson-demo-player__controls .lesson-demo-player__play-btn){
    width:max(var(--tkm-icon-touch),44px)!important;
    height:max(var(--tkm-icon-touch),44px)!important;
    min-width:max(var(--tkm-icon-touch),44px)!important;
    min-height:max(var(--tkm-icon-touch),44px)!important;
}

:is(.icon-btn,.member-icon-btn,.forum-icon-action,.site-header .icon-btn,.site-header .menu-toggle,.mod-icon-button,.admin-week>article>header button,.lesson-demo-player__controls .lesson-demo-player__icon-btn,.lesson-demo-player__controls .lesson-demo-player__play-btn) :is(.bi,.ui-icon,.forum-icon,.member-svg-icon){
    width:var(--tkm-icon-control)!important;
    height:var(--tkm-icon-control)!important;
    min-width:var(--tkm-icon-control)!important;
    min-height:var(--tkm-icon-control)!important;
    font-size:var(--tkm-icon-control)!important;
}

.site-header .icon-btn,
.site-header .menu-toggle{
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    min-height:48px!important;
}

:is(.member-row-icon,.member-file-symbol,.stat__icon,.admin-account-operation-card__icon,.admin-resource-card__top>span,.admin-mini-stats article>i,.mod-record-icon,.moderator-stat-grid article>i,.forum-draft-row__icon,.forum-guide__icon,.lesson-category-card>span,.lesson-video-thumb,.lesson-form-title>span,.lesson-material-drop>i,.documents-document-card__mark){
    width:max(44px,2.75rem)!important;
    height:max(44px,2.75rem)!important;
    min-width:max(44px,2.75rem)!important;
    min-height:max(44px,2.75rem)!important;
}

:is(.member-row-icon,.member-file-symbol,.stat__icon,.admin-account-operation-card__icon,.admin-resource-card__top>span,.admin-mini-stats article>i,.mod-record-icon,.moderator-stat-grid article>i,.forum-draft-row__icon,.forum-guide__icon,.lesson-category-card>span,.lesson-video-thumb,.lesson-form-title>span,.lesson-material-drop>i,.documents-document-card__mark) :is(.bi,.ui-icon,.forum-icon,.member-svg-icon),
:is(.member-row-icon,.member-file-symbol,.stat__icon,.admin-account-operation-card__icon,.admin-resource-card__top>span,.admin-mini-stats article>i,.mod-record-icon,.moderator-stat-grid article>i,.forum-draft-row__icon,.forum-guide__icon,.lesson-category-card>span,.lesson-video-thumb,.lesson-form-title>span,.lesson-material-drop>i,.documents-document-card__mark).bi{
    width:var(--tkm-icon-card)!important;
    height:var(--tkm-icon-card)!important;
    min-width:var(--tkm-icon-card)!important;
    min-height:var(--tkm-icon-card)!important;
    font-size:var(--tkm-icon-card)!important;
}

:is(.home-v9-service__icon,.documents-type .bi,.documents-sector__asset,.forum-category-row__icon .forum-icon,.forum-category-hero__icon .forum-icon,.member-empty .member-svg-icon){
    width:max(var(--tkm-icon-feature),2rem)!important;
    height:max(var(--tkm-icon-feature),2rem)!important;
    min-width:max(var(--tkm-icon-feature),2rem)!important;
    min-height:max(var(--tkm-icon-feature),2rem)!important;
    font-size:var(--tkm-icon-feature)!important;
}

.forum-status__dot,
.admin-status:before{
    width:10px!important;
    height:10px!important;
    min-width:10px!important;
    min-height:10px!important;
}

.account-bottom-nav>a,
.account-bottom-nav>button{
    min-height:68px!important;
    gap:4px!important;
}

.account-bottom-nav :is(.bi,.ui-icon,.member-svg-icon),
.account-bottom-nav__icon{
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
    min-height:22px!important;
    font-size:22px!important;
}

.account-bottom-nav__icon b{
    min-width:20px!important;
    height:20px!important;
    font-size:.64rem!important;
}

@media (max-width:760px){
    :root{
        --tkm-icon-meta:16px;
        --tkm-icon-inline:18px;
        --tkm-icon-button:20px;
        --tkm-icon-control:22px;
        --tkm-icon-card:23px;
        --tkm-icon-feature:30px;
        --tkm-icon-touch:44px;
    }

    .lesson-demo-player__controls .lesson-demo-player__icon-btn,
    .lesson-demo-player__controls .lesson-demo-player__play-btn{
        width:40px!important;
        height:40px!important;
        min-width:40px!important;
        min-height:40px!important;
    }

    .lesson-demo-player__controls .lesson-demo-player__icon-btn :is(.bi,.ui-icon),
    .lesson-demo-player__controls .lesson-demo-player__play-btn :is(.bi,.ui-icon){
        width:21px!important;
        height:21px!important;
        min-width:21px!important;
        min-height:21px!important;
        font-size:21px!important;
    }
}

/* Final homepage hero title lock: the slogan must stay on one line. */
body.is-homepage .home-v9-hero #home-hero-title{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(2.25rem,3.05vw,3rem)!important;
    line-height:1.04!important;
    letter-spacing:0!important;
    text-transform:none!important;
    white-space:nowrap!important;
}

body.is-homepage .home-v9-hero #home-hero-title span{
    display:inline!important;
    max-width:none!important;
    white-space:nowrap!important;
}

body.is-homepage .home-v9-hero__title-highlight{
    color:var(--home-gold)!important;
}

@media (max-width:760px){
    body.is-homepage .home-v9-hero #home-hero-title{
        width:100%!important;
        max-width:100%!important;
        font-size:clamp(1.45rem,6.7vw,2rem)!important;
        line-height:1.05!important;
        letter-spacing:0!important;
        white-space:nowrap!important;
    }

    body.is-homepage .home-v9-hero #home-hero-title span{
        max-width:none!important;
        white-space:nowrap!important;
    }
}
