/*
=============================================
  UNIFORM LINK TYPOGRAPHY SYSTEM
=============================================

Scale: 1.25 ratio (each level 1.25x larger)
Units: Fluid clamp() for automatic responsive scaling
Breakpoints: Mobile 0-767px | Tablet 768-1023px | Desktop 1024px+

Type Scale:
- h1: 42.72px (mobile) → 48.83px (desktop)
- h2: 34.18px → 39.06px  
- h3: 27.34px → 31.25px
- h4: 21.88px → 25px
- h5: 17.5px → 20px
- h6: 14px → 16px
- body: 14px → 16px

All sizes automatically scale between breakpoints using clamp().
*/

/*
=============================================
  GLOBAL TYPOGRAPHY OVERRIDES
=============================================
*/

/* === Base Typography === */
body {
  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
  line-height: 1.6;
}

button,
input,
select,
textarea,
p,
.body-font {
  font-family: var(--font-family-base);
}

/* === Global Link Colours === */
a {
  color: var(--ul-red-200);
}

a:hover,
a:focus {
  color: var(--ul-red-300);
}

/* === Headings === */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-family-base);
  font-weight: 700;
}

h1, .h1, .heading-1 {
  font-family: var(--font-family-base);
  font-size: var(--font-size-h1);
}

h2, .h2, .heading-2 {
  font-family: var(--font-family-base);
  font-size: var(--font-size-h2);
}

h3, .h3, .heading-3 {
  font-family: var(--font-family-base);
  font-size: var(--font-size-h3);
}

h4, .h4, .heading-4 {
  font-family: var(--font-family-base);
  font-size: var(--font-size-h4);
}

h5, .h5, .heading-5 {
  font-family: var(--font-family-base);
  font-size: var(--font-size-h5);
}

h6, .h6, .heading-6 {
  font-family: var(--font-family-base);
  font-size: var(--font-size-h6);
}

/* === Text Styling === */
em, i, .italic-text {
  font-family: var(--font-family-base);
  font-style: italic;
}

strong, b, .bold-text {
  font-family: var(--font-family-base);
  font-weight: 700;
}

/*
=============================================
  SALIENT THEME TYPOGRAPHY OVERRIDES
=============================================
*/

/* === Header & Navigation === */
#header-outer .logo a,
#header-outer .logo h1,
#header-outer .logo h2,
.logo-font {
  font-family: var(--font-family-base);
}

#header-outer nav > ul > li > a,
#header-outer nav ul li a,
.sf-menu > li > a,
.sf-menu li a,
#header-outer .sf-menu > li > a,
#header-outer .sf-menu li a,
.navigation-font {
  font-family: var(--font-family-base);
}

#header-outer .sf-menu ul li a,
#header-outer .sf-menu ul li a span,
.sf-menu ul li a,
.sf-menu ul li a span,
.navigation-dropdown-font {
  font-family: var(--font-family-base);
}

/* === Off Canvas Navigation === */
#slide-out-widget-area .off-canvas-menu-container li a,
#slide-out-widget-area .off-canvas-menu-container li a span,
.off-canvas-navigation-font {
  font-family: var(--font-family-base);
}

#slide-out-widget-area .off-canvas-menu-container .menu-item-description,
#slide-out-widget-area .off-canvas-menu-container .nectar-menu-item-desc,
.off-canvas-description-font {
  font-family: var(--font-family-base);
}

/* === Page Headers === */
.page-header-no-bg h1,
.page-header-bg-image h1,
.page-header-bg-color h1,
#page-header-bg h1,
.page-heading-font {
  font-family: var(--font-family-base);
}

.page-header-no-bg .subheader,
.page-header-bg-image .subheader,
.page-header-bg-color .subheader,
#page-header-bg .subheader,
.page-heading-subtitle-font {
  font-family: var(--font-family-base);
}

/* === Sidebar & Footer === */
.sidebar h1,
.sidebar h2,
.sidebar h3,
.sidebar h4,
.sidebar h5,
.sidebar h6,
.footer-outer h1,
.footer-outer h2,
.footer-outer h3,
.footer-outer h4,
.footer-outer h5,
.footer-outer h6,
.widget-area h1,
.widget-area h2,
.widget-area h3,
.widget-area h4,
.widget-area h5,
.widget-area h6,
.widget-title,
.widgettitle,
.sidebar-header-font,
.footer-header-font {
  font-family: var(--font-family-base);
}

/* === Sliders === */
.nectar-slider-wrap h1,
.nectar-slider-wrap h2,
.nectar-slider-wrap h3,
.nectar-slider-wrap h4,
.nectar-slider-wrap h5,
.nectar-slider-wrap h6,
.home-slider-wrap h1,
.home-slider-wrap h2,
.home-slider-wrap h3,
.home-slider-wrap h4,
.home-slider-wrap h5,
.home-slider-wrap h6,
.swiper-slide h1,
.swiper-slide h2,
.swiper-slide h3,
.swiper-slide h4,
.swiper-slide h5,
.swiper-slide h6,
.slider-heading-font {
  font-family: var(--font-family-base);
}

.nectar-slider-wrap .caption,
.nectar-slider-wrap .slide-caption,
.home-slider-wrap .caption,
.home-slider-wrap .slide-caption,
.swiper-slide .caption,
.swiper-slide .slide-caption,
.slider-caption-font {
  font-family: var(--font-family-base);
}

/* === Testimonials === */
.testimonial_slider blockquote,
.testimonial_slider .testimonial-quote,
.testimonial_slider .testimonial-text,
blockquote,
.blockquote,
.testimonial-blockquote-font {
  font-family: var(--font-family-base);
}

/* === Blog & Content === */
.single-post .post-content,
.single-post .post-content p,
.single-post .post-content h1,
.single-post .post-content h2,
.single-post .post-content h3,
.single-post .post-content h4,
.single-post .post-content h5,
.single-post .post-content h6,
.blog-single-content-font {
  font-family: var(--font-family-base);
}

/* === Portfolio === */
.portfolio-filters a,
.portfolio-filters li,
.portfolio-filters span,
.post-grid-filters a,
.post-grid-filters li,
.post-grid-filters span,
.isotope-filters a,
.isotope-filters li,
.isotope-filters span,
.portfolio-filter-font {
  font-family: var(--font-family-base);
}

.portfolio-items .work-item .work-info,
.portfolio-items .work-item .work-info p,
.portfolio-items .work-item .work-info h4,
.portfolio-items .work-item .work-excerpt,
.portfolio-caption-font {
  font-family: var(--font-family-base);
}

/* === Team Members === */
.sub-header,
.subheader,
.team-member .team-member-name,
.team-member .team-member-title,
.team-member .team-member-role,
.team-member h3,
.team-member h4,
.team-member h5,
.sub-header-font,
.team-member-font {
  font-family: var(--font-family-base);
}

/* Ensure subheaders have heavier font weight */
.sub-header,
.subheader {
  font-weight: 600 !important;
}

/* === Nectar Elements === */
.nectar-fancy-ul li,
.nectar-button,
.nectar-split-heading,
.nectar-highlighted-text,
.nectar-fancy-box h1,
.nectar-fancy-box h2,
.nectar-fancy-box h3,
.nectar-fancy-box h4,
.nectar-fancy-box h5,
.nectar-fancy-box h6,
.nectar-fancy-box p,
.nectar-icon-list li,
.nectar-icon-list-item,
.nectar-flip-box .flip-box-front,
.nectar-flip-box .flip-box-back,
.nectar-cta h1,
.nectar-cta h2,
.nectar-cta h3,
.nectar-cta h4,
.nectar-cta h5,
.nectar-cta h6,
.nectar-cta p {
  font-family: var(--font-family-base);
}

.nectar-button,
.nectar-button span,
a.nectar-button,
a.nectar-button span,
.button-font {
  font-family: var(--font-family-base);
}

/* === Additional Salient Elements === */
.nectar-post-grid .post-title,
.nectar-post-grid .post-meta,
.portfolio-items .work-item h4,
.portfolio-items .work-item .work-meta,
.testimonial_slider .testimonial-name,
.testimonial_slider .testimonial-meta,
.team-member h4,
.team-member .team-meta,
.pricing-table .title,
.pricing-table .price,
.blog-recent .post-title,
.blog-recent .post-meta {
  font-family: var(--font-family-base);
}



/* === Forms & Labels === */
label,
.form-label,
.category-label,
.wpcf7-form label,
.widget_categories li,
.widget_archive li,
.widget_meta li,
.widget_pages li,
.widget_recent_entries li,
.widget_recent_comments li,
.widget_nav_menu li,
.widget_tag_cloud a,
.tagcloud a {
  font-family: var(--font-family-base);
}

/* === Form Elements === */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="url"],
input[type="search"],
textarea,
select {
  font-family: var(--font-family-base);
}

/* === WPBakery/Visual Composer === */
.wpb_text_column p,
.wpb_wrapper p,
.vc_custom_heading {
  font-family: var(--font-family-base);
}

/* === Section-specific Overrides === */
/* Milestone subject - global */
.milestone-wrap .subject {
  color: var(--neutral-1000) !important;
  text-align: center !important;
  font-family: "Stolzl", var(--font-family-base), sans-serif !important;
  font-size: 2.125rem !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 2.375rem !important;
  letter-spacing: -0.064rem !important;
}

/* Milestone numbers - override inline styles */
.number[data-number-size] {
  font-size: 2.5rem !important;
  line-height: 2.75rem !important;
}

.milestone-heading,
.number .milestone-heading {
  font-family: "Stolzl", var(--font-family-base), sans-serif !important;
  font-size: 2.5rem !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 2.75rem !important;
  letter-spacing: -0.075rem !important;
  color: var(--ul-red-200) !important;
}

/*
=============================================
  CUSTOMIZER INTEGRATION - TYPOGRAPHY
=============================================
*/

/* Nectar fancy unordered list items */
#ajax-content-wrap .nectar-fancy-ul ul li {
    font-size: 1rem; /* 16px */
}
