/*
 * Aurelia + Coach CRM Unified Typography Contract 1.1.0
 * Durable visual contract: one font family, readable lower bounds, controlled headings.
 * Canonical typeface: Lora. This file is intentionally designed to load LAST.
 */
:root{
  --aurelia-typeface:"Lora",Georgia,"Times New Roman",serif;
  --aurelia-site-body:clamp(16.5px,1.02vw,17.5px);
  --aurelia-site-secondary:clamp(14.5px,.90vw,15.5px);
  --aurelia-site-micro:13.5px;
  --aurelia-site-control:15px;
  --aurelia-site-h1:clamp(40px,4.15vw,60px);
  --aurelia-site-h2:clamp(30px,2.9vw,42px);
  --aurelia-site-h3:clamp(23px,2vw,30px);
  --aurelia-site-h4:clamp(20px,1.6vw,25px);
  --aurelia-site-h5:clamp(18px,1.35vw,21px);
  --aurelia-site-h6:clamp(16.5px,1.2vw,19px);

  --aurelia-crm-body:15.5px;
  --aurelia-crm-secondary:14.25px;
  --aurelia-crm-micro:12.75px;
  --aurelia-crm-control:14px;
  --aurelia-crm-h1:clamp(30px,2.25vw,40px);
  --aurelia-crm-h2:clamp(24px,1.75vw,32px);
  --aurelia-crm-h3:clamp(20px,1.35vw,26px);
  --aurelia-crm-h4:clamp(17.5px,1.1vw,21px);
}

/* ==========================================================
   PUBLIC SITE / AURELIA THEME
   ========================================================== */
html body.ad-theme{
  --ad-font:var(--aurelia-typeface)!important;
  --ad-ui:var(--aurelia-typeface)!important;
  --ad-script:var(--aurelia-typeface)!important;
  --ad-display:var(--aurelia-typeface)!important;
  --adp-serif:var(--aurelia-typeface)!important;
  --adp-ui:var(--aurelia-typeface)!important;
  --adp-script:var(--aurelia-typeface)!important;
  --abc-serif:var(--aurelia-typeface)!important;
  --abc-ui:var(--aurelia-typeface)!important;
  --abc-script:var(--aurelia-typeface)!important;
  --acs-serif:var(--aurelia-typeface)!important;
  --acs-sans:var(--aurelia-typeface)!important;
  --acs-script:var(--aurelia-typeface)!important;
  --hb-font:var(--aurelia-typeface)!important;
  --hb-ui:var(--aurelia-typeface)!important;
  --hb-script:var(--aurelia-typeface)!important;
  --ps-serif:var(--aurelia-typeface)!important;
  --ps-ui:var(--aurelia-typeface)!important;
  --serif:var(--aurelia-typeface)!important;
  --ui:var(--aurelia-typeface)!important;
  --script:var(--aurelia-typeface)!important;

  --ad-type-h1:var(--aurelia-site-h1)!important;
  --ad-type-h2:var(--aurelia-site-h2)!important;
  --ad-type-h3:var(--aurelia-site-h3)!important;
  --ad-type-h4:var(--aurelia-site-h4)!important;
  --ad-type-h5:var(--aurelia-site-h5)!important;
  --ad-type-h6:var(--aurelia-site-h6)!important;
  --ad-type-body:var(--aurelia-site-body)!important;
  --ad-type-secondary:var(--aurelia-site-secondary)!important;
  --ad-type-menu:15px!important;
  --ad-type-cta:15px!important;
  --ad-type-label:14.5px!important;
  --ad-type-input:16px!important;
  --ad-type-footer:14.5px!important;

  font-family:var(--aurelia-typeface)!important;
  font-size:var(--aurelia-site-body)!important;
  line-height:1.64!important;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

html body.ad-theme.ad-theme.ad-theme :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,input,textarea,select,option,th,td,
  figcaption,cite,caption,summary,button,blockquote,small,strong,b,em,mark,code,kbd,samp,
  a:not(.eicon):not(.fa):not(.fas):not(.far):not(.fal):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not(.eicon):not([class*="eicon-"]):not([class*=" icon"]):not([class^="icon"])
){font-family:var(--aurelia-typeface)!important}

/* Semantic heading ceiling/floor: large enough to lead, never billboard-sized. */
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme h1{font-size:var(--aurelia-site-h1)!important;line-height:1.04!important}
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme h2{font-size:var(--aurelia-site-h2)!important;line-height:1.08!important}
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme h3{font-size:var(--aurelia-site-h3)!important;line-height:1.12!important}
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme h4{font-size:var(--aurelia-site-h4)!important;line-height:1.2!important}
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme h5{font-size:var(--aurelia-site-h5)!important;line-height:1.25!important}
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme h6{font-size:var(--aurelia-site-h6)!important;line-height:1.3!important}

/* Reading text and compact text floors. */
html body.ad-theme.ad-theme.ad-theme main :where(p,li,dt,dd,blockquote),
html body.ad-theme.ad-theme.ad-theme .ad-entry-content :where(p,li,dt,dd,blockquote),
html body.ad-theme.ad-theme.ad-theme .elementor-widget-text-editor :where(p,li){
  font-size:var(--aurelia-site-body)!important;
  line-height:1.64!important;
  font-weight:400!important;
}
html body.ad-theme.ad-theme.ad-theme :where(small,figcaption,cite,caption){
  font-size:max(var(--aurelia-site-micro),.78em)!important;
  line-height:1.48!important;
}
html body.ad-theme.ad-theme.ad-theme :where(
  .ad-brand-tag,.ad-eyebrow,.ad-kicker,.ad-category,
  .abc-kicker,.abc-kicker-light,.abc-kicker-rose,
  .adp-kicker,.adp-kicker-line,.adp-kicker-rose,
  .ahb-kicker,.adco-kicker,.adco-bio-eyebrow,.adco-fit-eyebrow,
  .acs-kicker,.hbcs-kicker,.ps-kicker
){font-size:13px!important;line-height:1.35!important}
html body.ad-theme.ad-theme.ad-theme :where(
  button,.ad-btn,.ad-btn-small,.ad-booking-btn,.elementor-button,.wp-block-button__link,
  .woocommerce .button,.woocommerce button.button,.woocommerce a.button,.woocommerce input.button,
  input[type="submit"],input[type="button"]
){font-size:var(--aurelia-site-control)!important;line-height:1.3!important}
html body.ad-theme.ad-theme.ad-theme :where(
  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),textarea,select
){font-size:16px!important;line-height:1.45!important}
html body.ad-theme.ad-theme.ad-theme table th{font-size:13.5px!important;line-height:1.4!important}
html body.ad-theme.ad-theme.ad-theme table td{font-size:15.5px!important;line-height:1.5!important}

/* Known ultra-compact surfaces from older releases. */
html body.ad-theme.ad-theme.ad-theme.ad-theme :where(
  .ad-header-cart-count,.ad-header-wishlist-count,
  .ad-legal-links,.ad-footer-bottom small,.ad-newsletter>small,
  .abc-stat small,.abc-side-note,.adref-stats span,.adref-side-note,
  .ahb-program-bottom-note,.adp-programs-quote-copy small,
  .hbcs-book-stack span,.adco-testimonial-edition span,
  .ad-account-page__hint,.ad-account-page__action-copy small,
  .ad-portal-shop__product small,.ad-portal-shop__order-bottom>div:first-child span
){font-size:13px!important;line-height:1.42!important}

/* Shop cards remain compact but readable. */
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme .ad-shop .ad-home-shop-card h2.woocommerce-loop-product__title,
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme .ad-shop .ad-home-shop-card .ad-wc-card__price,
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme .ad-shop .ad-home-shop-card .ad-wc-card__price .price,
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme .ad-shop .ad-home-shop-card .ad-wc-card__price .woocommerce-Price-amount{
  font-size:16px!important;line-height:1.35!important
}

/* ==========================================================
   COACH CRM / PORTAL / TEAM / MARKETING / WP-ADMIN CRM
   ========================================================== */
body.coach-crm-portal-page,
body.coach-crm-team-workspace-page,
body.coach-crm-marketing-workspace-page,
body.coach-crm-marketing-login-page,
.ccrm-portal,.ccrm-auth-screen,.ccrm-mkt-login,.ccrm-mkt-gate,
.coach-crm-modern,.ctw-app,.ccrm-mkt-workspace{
  --tw-ui:var(--aurelia-typeface)!important;
  --tw-display:var(--aurelia-typeface)!important;
  font-family:var(--aurelia-typeface)!important;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

/* One family for every textual CRM role; keep icon fonts untouched. */
.coach-crm-modern :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,input,textarea,select,option,th,td,
  figcaption,cite,caption,summary,button,blockquote,small,strong,b,em,a,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ctw-app :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,input,textarea,select,option,th,td,
  figcaption,cite,caption,summary,button,blockquote,small,strong,b,em,a,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ccrm-portal :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,input,textarea,select,option,th,td,
  figcaption,cite,caption,summary,button,blockquote,small,strong,b,em,a,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ccrm-mkt-workspace :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,input,textarea,select,option,th,td,
  figcaption,cite,caption,summary,button,blockquote,small,strong,b,em,a,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ccrm-mkt-login :where(h1,h2,h3,h4,p,label,input,button,small,strong,a,span:not([aria-hidden="true"])),
.ccrm-mkt-gate :where(h1,h2,h3,h4,p,label,input,button,small,strong,a,span:not([aria-hidden="true"])),
.ccrm-auth-screen :where(h1,h2,h3,h4,p,label,input,button,small,strong,a,span:not([aria-hidden="true"])){
  font-family:var(--aurelia-typeface)!important;
  letter-spacing:normal;
}

/* CRM heading scale. */
.coach-crm-modern h1,.ctw-app h1,.ccrm-portal h1,.ccrm-mkt-workspace h1,.ccrm-mkt-login h1,.ccrm-auth-screen h1{
  font-size:var(--aurelia-crm-h1)!important;line-height:1.08!important
}
.coach-crm-modern h2,.ctw-app h2,.ccrm-portal h2,.ccrm-mkt-workspace h2,.ccrm-mkt-login h2,.ccrm-auth-screen h2{
  font-size:var(--aurelia-crm-h2)!important;line-height:1.12!important
}
.coach-crm-modern h3,.ctw-app h3,.ccrm-portal h3,.ccrm-mkt-workspace h3,.ccrm-mkt-login h3,.ccrm-auth-screen h3{
  font-size:var(--aurelia-crm-h3)!important;line-height:1.18!important
}
.coach-crm-modern h4,.ctw-app h4,.ccrm-portal h4,.ccrm-mkt-workspace h4,.ccrm-mkt-login h4,.ccrm-auth-screen h4{
  font-size:var(--aurelia-crm-h4)!important;line-height:1.24!important
}

/* Working copy. */
.coach-crm-modern :where(p,li,dd,dt),
.ctw-app :where(p,li,dd,dt),
.ccrm-portal :where(p,li,dd,dt),
.ccrm-mkt-workspace :where(p,li,dd,dt),
.ccrm-mkt-login :where(p,li),
.ccrm-mkt-gate :where(p,li),
.ccrm-auth-screen :where(p,li){
  font-size:var(--aurelia-crm-body)!important;
  line-height:1.58!important;
}

/* Readability floor for metadata. max() preserves larger inherited text. */
.coach-crm-modern :where(small,figcaption,cite,caption,label),
.ctw-app :where(small,figcaption,cite,caption,label),
.ccrm-portal :where(small,figcaption,cite,caption,label),
.ccrm-mkt-workspace :where(small,figcaption,cite,caption,label),
.ccrm-mkt-login :where(small,label),
.ccrm-mkt-gate :where(small,label),
.ccrm-auth-screen :where(small,label){
  font-size:max(var(--aurelia-crm-micro),.78em)!important;
  line-height:1.45!important;
}
.coach-crm-modern :where(span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])),
.ctw-app :where(span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])),
.ccrm-portal :where(span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])),
.ccrm-mkt-workspace :where(span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])){
  font-size:max(12.5px,.78em)!important;
}

/* Controls and tables. */
.coach-crm-modern :where(button,.button,input[type="submit"],input[type="button"]),
.ctw-app :where(button,.button,input[type="submit"],input[type="button"]),
.ccrm-portal :where(button,.button,input[type="submit"],input[type="button"]),
.ccrm-mkt-workspace :where(button,.button,input[type="submit"],input[type="button"]),
.ccrm-mkt-login :where(button,input[type="submit"]),
.ccrm-auth-screen :where(button,input[type="submit"]){font-size:var(--aurelia-crm-control)!important;line-height:1.35!important}
.coach-crm-modern :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),textarea,select),
.ctw-app :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),textarea,select),
.ccrm-portal :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),textarea,select),
.ccrm-mkt-workspace :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),textarea,select),
.ccrm-mkt-login :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])),
.ccrm-auth-screen :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"])){
  font-size:15px!important;line-height:1.45!important
}
.coach-crm-modern table th,.ctw-app table th,.ccrm-portal table th,.ccrm-mkt-workspace table th{font-size:12.5px!important;line-height:1.4!important}
.coach-crm-modern table td,.ctw-app table td,.ccrm-portal table td,.ccrm-mkt-workspace table td{font-size:14px!important;line-height:1.5!important}

/* High-value CRM exceptions: tame oversized branding and lift tiny navigation. */
.coach-crm-modern .coach-brand-row h1{font-size:34px!important;line-height:1.05!important}
body.coach-crm-team-workspace-page .coach-page-context h2{font-size:30px!important;line-height:1.12!important}
body.coach-crm-team-workspace-page .coach-today-hero h2{font-size:34px!important;line-height:1.08!important}
.coach-crm-modern .coach-kpi-card span{font-size:12.5px!important;line-height:1.35!important}
.coach-crm-modern .coach-kpi-card strong{font-size:26px!important;line-height:1.1!important}
body.coach-crm-team-workspace-page .coach-main-nav-sidebar .coach-nav-copy b,
body.coach-crm-team-workspace-page .ctw-nav-copy strong{font-size:14px!important;line-height:1.25!important}
body.coach-crm-team-workspace-page .coach-main-nav-sidebar .coach-nav-copy small,
body.coach-crm-team-workspace-page .ctw-nav-copy small,
body.coach-crm-marketing-workspace-page .ctw-nav-copy small{font-size:12.5px!important;line-height:1.35!important}
.ccrm-portal .ccrm-nav-group-label,
.ccrm-portal .ccrm-sidebar-profile-copy small,
.ccrm-portal .ccrm-sidebar-security small{font-size:12.5px!important;line-height:1.35!important}
.coach-crm-modern :where(.coach-crm-kicker,.coach-subnav-eyebrow,.coach-note-category,.coach-note-pin,.coach-hook-status),
body.coach-crm-team-workspace-page :where(.ctw-kicker,.ctw-message-direction),
body.coach-crm-marketing-workspace-page :where(.ccrm-mkt-kicker,.ccrm-mkt-pulse b){font-size:12.5px!important;line-height:1.35!important}

/* Explicitly restore icon fonts/glyph boxes after the global family contract. */
body.ad-theme .dashicons,
.coach-crm-modern .dashicons,.ctw-app .dashicons,.ccrm-portal .dashicons,.ccrm-mkt-workspace .dashicons,
body.ad-theme [class^="dashicons-"],body.ad-theme [class*=" dashicons-"],
.coach-crm-modern [class^="dashicons-"],.coach-crm-modern [class*=" dashicons-"],
.ctw-app [class^="dashicons-"],.ctw-app [class*=" dashicons-"],
.ccrm-mkt-workspace [class^="dashicons-"],.ccrm-mkt-workspace [class*=" dashicons-"]{
  font-family:dashicons!important;
}

@media(max-width:767px){
  :root{
    --aurelia-site-h1:clamp(34px,9vw,44px);
    --aurelia-site-h2:clamp(28px,7.4vw,36px);
    --aurelia-site-h3:clamp(23px,6vw,29px);
    --aurelia-site-h4:clamp(20px,5.4vw,25px);
    --aurelia-site-body:17px;
    --aurelia-site-secondary:15px;
    --aurelia-crm-h1:clamp(28px,7.4vw,36px);
    --aurelia-crm-h2:clamp(23px,6.2vw,29px);
    --aurelia-crm-h3:clamp(20px,5.2vw,25px);
    --aurelia-crm-body:15.5px;
  }
  html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme .ad-shop .ad-home-shop-card h2.woocommerce-loop-product__title,
  html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme .ad-shop .ad-home-shop-card .ad-wc-card__price,
  html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme .ad-shop .ad-home-shop-card .ad-wc-card__price .price,
  html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme .ad-shop .ad-home-shop-card .ad-wc-card__price .woocommerce-Price-amount{font-size:15px!important}
  .coach-crm-modern .coach-brand-row h1{font-size:30px!important}
  body.coach-crm-team-workspace-page .coach-page-context h2{font-size:28px!important}
  body.coach-crm-team-workspace-page .coach-today-hero h2{font-size:31px!important}
}

/* ==========================================================
   DURABILITY LOCK
   High-specificity final guard against later feature CSS that reintroduces
   another font, sub-12px interface text or oversized semantic headings.
   Keep this block at the END of the contract in future releases.
   ========================================================== */
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme :where(
  p,li,dt,dd,label,legend,input,textarea,select,option,th,td,figcaption,cite,caption,summary,
  button,blockquote,small,strong,b,em,mark,code,kbd,samp,
  a:not(.eicon):not(.fa):not(.fas):not(.far):not(.fal):not(.fab):not(.fa-solid):not(.fa-regular):not(.fa-brands),
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not(.eicon):not([class*="eicon-"]):not([class*="icon"]):not([class^="icon"])
){font-family:var(--aurelia-typeface)!important}
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme :where(
  small,figcaption,cite,caption,
  .ad-brand-tag,.ad-eyebrow,.ad-kicker,.ad-category,
  .abc-kicker,.adp-kicker,.ahb-kicker,.adco-kicker,.acs-kicker,.hbcs-kicker,.ps-kicker
){font-size:max(13.5px,.78em)!important;line-height:1.42!important}
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme h1{font-size:var(--aurelia-site-h1)!important}
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme h2{font-size:var(--aurelia-site-h2)!important}
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme h3{font-size:var(--aurelia-site-h3)!important}

.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,input,textarea,select,option,th,td,figcaption,cite,caption,summary,
  button,blockquote,small,strong,b,em,a,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,input,textarea,select,option,th,td,figcaption,cite,caption,summary,
  button,blockquote,small,strong,b,em,a,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,input,textarea,select,option,th,td,figcaption,cite,caption,summary,
  button,blockquote,small,strong,b,em,a,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace :where(
  h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,legend,input,textarea,select,option,th,td,figcaption,cite,caption,summary,
  button,blockquote,small,strong,b,em,a,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
){font-family:var(--aurelia-typeface)!important}

.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern :where(
  small,figcaption,cite,caption,label,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app :where(
  small,figcaption,cite,caption,label,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal :where(
  small,figcaption,cite,caption,label,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
),
.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace :where(
  small,figcaption,cite,caption,label,
  span:not([aria-hidden="true"]):not(.dashicons):not([class*="dashicons-"]):not([class*="icon"]):not([class^="icon"])
){font-size:max(12.75px,.78em)!important;line-height:1.4!important}

.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern h1,
.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app h1,
.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal h1,
.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace h1{font-size:var(--aurelia-crm-h1)!important}
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern h2,
.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app h2,
.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal h2,
.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace h2{font-size:var(--aurelia-crm-h2)!important}

/* Glyph-only exceptions: these are icons/symbols, not readable text roles. */
html body.ad-theme .ad-wc-stars,
html body.ad-theme .star-rating,
html body.ad-theme .star-rating span{font-family:Arial,sans-serif!important}
.coach-crm-modern .coach-social-icon-facebook{font-family:Arial,sans-serif!important}
.coach-crm-modern .coach-social-icon-pinterest{font-family:Georgia,serif!important}
.coach-crm-modern .coach-section-help,
.coach-crm-modern .coach-help-dot,
body.coach-crm-team-workspace-page .coach-crm-modern .coach-section-help,
body.coach-crm-team-workspace-page .coach-crm-modern .coach-help-dot{
  font-family:Arial,sans-serif!important;
  font-size:10px!important;
  line-height:1!important;
}


/* ==========================================================
   1.1.0 BALANCED COMPONENT SCALE
   The semantic scale above is intentionally conservative. These rules cover
   legacy component classes that historically used 7-11px metadata or 50-100px
   display text without changing layout, color, spacing or application logic.
   ========================================================== */

/* Public site: cap legacy display classes that are not always semantic h1/h2. */
html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme :where(
  .ad-about-elementor .adab-display .elementor-heading-title,
  .ad-about-codecopy h1,.ad-about-widget-stable h1,.ad-programs-widget-stable h1,
  .ad-programs-widget-stable .adp-hero-copy h1,.ad-about-hero h1,.ad-about-v3 h1,
  .adv2-hero-copy h1,.ad-human-brand-widget h1,.hbcs-root .hbcs-hero-title .elementor-heading-title,
  .adco-hero-copy h1,.ad-hero h1
){font-size:var(--aurelia-site-h1)!important;line-height:1.04!important}

html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme :where(
  .ad-curaj-online .adco-bio-copy h2,.adco-bio-copy h2,.adco-fit-copy h2,
  .adco-final-shell h2,.adco-how .adco-section-title,.adco-faq .adco-section-title,
  .adco-learn .adco-section-title,.adco-gains .adco-section-title,
  .ad-about-youtube-copy h2,.ad-human-brand-widget .ahb-program-intro h2
){font-size:var(--aurelia-site-h2)!important;line-height:1.08!important}

html body.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme.ad-theme :where(
  [class*="eyebrow"],[class*="kicker"],[class*="meta"],[class*="caption"],
  .ad-brand-tag,.ad-category,.ad-account-page__hint,.ad-account-page__role-intro span
){font-size:max(13.5px,.78em)!important;line-height:1.45!important}

/* Decorative display glyphs may remain large; they are not reading text. */
html body.ad-theme :where(.adco-testimonial-watermark,.adco-faq-monogram,.adv2-quote-mark,.adref-quote span){line-height:1!important}

/* CRM common reading floor. */
.coach-crm-modern :where(.muted,.coach-card-head a,.coach-pro-nav-links a,.coach-nav-copy b,.coach-nav-copy small),
.ctw-app :where(.muted,.ctw-nav-copy strong,.ctw-nav-copy small),
.ccrm-portal :where(.muted,.ccrm-nav-group-label,.ccrm-sidebar-profile-copy small,.ccrm-sidebar-security small),
.ccrm-mkt-workspace :where(.muted,.ctw-nav-copy strong,.ctw-nav-copy small){
  font-size:max(13px,.80em)!important;
  line-height:1.45!important;
}

/* CRM admin dashboard: card titles are UI titles, not page-size H2s. */
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-card-head h2{
  font-size:clamp(24px,1.45vw,28px)!important;
  line-height:1.12!important;
  letter-spacing:-.03em!important;
}
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-dashboard-next .coach-card-head h2,
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-dashboard-workgrid .coach-card-head h2{
  font-size:clamp(24px,1.4vw,28px)!important;
}
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-dashboard-coach-activity h2{
  font-size:clamp(28px,1.8vw,32px)!important;
  line-height:1.12!important;
}
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-page-context h2{
  font-size:clamp(26px,1.7vw,30px)!important;
  line-height:1.12!important;
}
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-premium-hero h2,
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-today-hero h2{
  font-size:clamp(28px,2vw,34px)!important;
  line-height:1.1!important;
}
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern :where(.coach-kpi-card .coach-kpi-value,.coach-kpi-card strong,.coach-kpi-card b){
  font-size:26px!important;
  line-height:1.1!important;
}
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-crm-kicker,
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern :where([class*="eyebrow"],[class*="kicker"],[class*="meta"]){
  font-size:max(12.75px,.78em)!important;
  line-height:1.4!important;
}
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern table.widefat thead th,
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-table th{
  font-size:12.75px!important;
  line-height:1.4!important;
}
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern table.widefat tbody td,
.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-table td{
  font-size:14px!important;
  line-height:1.5!important;
}

/* Portal / Team / Marketing: keep page titles and cards proportional to app chrome. */
.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal :where(.ccrm-head h1,.ccrm-head h2,.ccrm-page-head h1,.ccrm-page-head h2),
.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app :where(.ctw-hero h1,.ctw-hero h2,.ctw-page-head h1,.ctw-page-head h2),
.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace :where(h1,.ccrm-mkt-hero h1,.ccrm-mkt-page-head h1){
  font-size:clamp(28px,2.1vw,36px)!important;
  line-height:1.1!important;
}
.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal :where(.ccrm-card h2,.ccrm-card h3,.ccrm-section h2,.ccrm-section h3),
.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app :where(.ctw-card h2,.ctw-card h3,.ctw-section h2,.ctw-section h3),
.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace :where(.ccrm-mkt-card h2,.ccrm-mkt-card h3,.ccrm-mkt-section h2,.ccrm-mkt-section h3){
  font-size:clamp(20px,1.4vw,26px)!important;
  line-height:1.18!important;
}
.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal :where([class*="eyebrow"],[class*="kicker"],[class*="meta"],small),
.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app :where([class*="eyebrow"],[class*="kicker"],[class*="meta"],small),
.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace :where([class*="eyebrow"],[class*="kicker"],[class*="meta"],small){
  font-size:max(12.75px,.78em)!important;
  line-height:1.42!important;
}

/* Authentication surfaces are compact application screens, not marketing heroes. */
.ccrm-mkt-login.ccrm-mkt-login.ccrm-mkt-login.ccrm-mkt-login h1,.ccrm-mkt-gate.ccrm-mkt-gate.ccrm-mkt-gate.ccrm-mkt-gate h1,.ccrm-auth-screen.ccrm-auth-screen.ccrm-auth-screen.ccrm-auth-screen h1{
  font-size:clamp(28px,2.4vw,38px)!important;
  line-height:1.1!important;
}

@media(max-width:767px){
  .coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-card-head h2{font-size:24px!important}
  .coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-dashboard-coach-activity h2{font-size:28px!important}
  .coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-premium-hero h2,
  .coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern.coach-crm-modern .coach-today-hero h2{font-size:30px!important}
  .ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal.ccrm-portal :where(.ccrm-head h1,.ccrm-head h2,.ccrm-page-head h1,.ccrm-page-head h2),
  .ctw-app.ctw-app.ctw-app.ctw-app.ctw-app.ctw-app :where(.ctw-hero h1,.ctw-hero h2,.ctw-page-head h1,.ctw-page-head h2),
  .ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace.ccrm-mkt-workspace :where(h1,.ccrm-mkt-hero h1,.ccrm-mkt-page-head h1){font-size:30px!important}
}

/* 1.1.0 FINAL SPECIFICITY ANCHOR
   :is() carries the synthetic id specificity while matching the real class/tag.
   This keeps the contract stable even when legacy CRM/page CSS uses many !important rules. */
.coach-crm-modern :is(#atg-type-anchor,h1),
.ctw-app :is(#atg-type-anchor,h1),
.ccrm-portal :is(#atg-type-anchor,h1),
.ccrm-mkt-workspace :is(#atg-type-anchor,h1){font-size:var(--aurelia-crm-h1)!important;line-height:1.08!important}
.coach-crm-modern :is(#atg-type-anchor,h2),
.ctw-app :is(#atg-type-anchor,h2),
.ccrm-portal :is(#atg-type-anchor,h2),
.ccrm-mkt-workspace :is(#atg-type-anchor,h2){font-size:var(--aurelia-crm-h2)!important;line-height:1.12!important}
.coach-crm-modern :is(#atg-type-anchor,h3),
.ctw-app :is(#atg-type-anchor,h3),
.ccrm-portal :is(#atg-type-anchor,h3),
.ccrm-mkt-workspace :is(#atg-type-anchor,h3){font-size:var(--aurelia-crm-h3)!important;line-height:1.18!important}

.coach-crm-modern :is(#atg-type-anchor,.coach-card-head) h2{font-size:clamp(24px,1.45vw,28px)!important;line-height:1.12!important}
.coach-crm-modern :is(#atg-type-anchor,.coach-dashboard-coach-activity) h2{font-size:clamp(28px,1.8vw,32px)!important;line-height:1.12!important}
.coach-crm-modern :is(#atg-type-anchor,.coach-page-context) h2{font-size:clamp(26px,1.7vw,30px)!important;line-height:1.12!important}
.coach-crm-modern :is(#atg-type-anchor,.coach-premium-hero) h2,
.coach-crm-modern :is(#atg-type-anchor,.coach-today-hero) h2{font-size:clamp(28px,2vw,34px)!important;line-height:1.1!important}
.coach-crm-modern :is(#atg-type-anchor,.coach-brand-row) h1{font-size:34px!important;line-height:1.05!important}

.ccrm-portal :is(#atg-type-anchor,.ccrm-head) h1,
.ccrm-portal :is(#atg-type-anchor,.ccrm-head) h2,
.ccrm-portal :is(#atg-type-anchor,.ccrm-page-head) h1,
.ccrm-portal :is(#atg-type-anchor,.ccrm-page-head) h2,
.ctw-app :is(#atg-type-anchor,.ctw-hero) h1,
.ctw-app :is(#atg-type-anchor,.ctw-hero) h2,
.ctw-app :is(#atg-type-anchor,.ctw-page-head) h1,
.ctw-app :is(#atg-type-anchor,.ctw-page-head) h2,
.ccrm-mkt-workspace :is(#atg-type-anchor,.ccrm-mkt-hero) h1,
.ccrm-mkt-workspace :is(#atg-type-anchor,.ccrm-mkt-page-head) h1{font-size:clamp(28px,2.1vw,36px)!important;line-height:1.1!important}

html body.ad-theme :is(#atg-type-anchor,h1){font-size:var(--aurelia-site-h1)!important;line-height:1.04!important}
html body.ad-theme :is(#atg-type-anchor,h2){font-size:var(--aurelia-site-h2)!important;line-height:1.08!important}
html body.ad-theme :is(#atg-type-anchor,h3){font-size:var(--aurelia-site-h3)!important;line-height:1.12!important}

@media(max-width:767px){
  .coach-crm-modern :is(#atg-type-anchor,.coach-card-head) h2{font-size:24px!important}
  .coach-crm-modern :is(#atg-type-anchor,.coach-dashboard-coach-activity) h2{font-size:28px!important}
  .coach-crm-modern :is(#atg-type-anchor,.coach-premium-hero) h2,
  .coach-crm-modern :is(#atg-type-anchor,.coach-today-hero) h2{font-size:30px!important}
}
