
/* =========================================================
   BULL GLOBAL TYPOGRAPHY SYSTEM
   Only 4 visual font sizes are used site-wide.
   12px = labels/meta
   16px = body/nav/buttons
   28px = section/card titles
   42px = hero/major headings
   ========================================================= */
:root{
  --fs-label:12px;
  --fs-body:16px;
  --fs-title:28px;
  --fs-hero:42px;
}

/* Base copy */
html,
body,
p,
li,
a,
span,
input,
textarea,
select,
button,
label,
td,
th,
small,
div{
  font-size:var(--fs-body) !important;
}

/* Small labels / metadata */
.product-category,
.about-content-tag,
.glass-eyebrow,
.drop-column-title,
.glass-product-copy span,
.glass-mobile-foot,
.badge,
.foot-cont-follow2,
.tech-spec-table thead th,
.tech-wide-section th,
.tech-table-section-row th,
.media-folder-title,
.product-specs-list .spec-item,
.bull-small-black,
.bull-gold-title,
.section-desc-new + small{
  font-size:var(--fs-label) !important;
}

/* Standard body / navigation / actions */
.glass-nav-link,
.nav-menu-two-new,
.bg-1000-name,
.bg-js-name,
.product-action-btn,
.bull-btn,
.form-btn,
.product-details-link-new,
.foot-ul-con,
.foot-ul-con3,
.foot-contact-tit,
.form-input,
.form-address,
.product-desc,
.product-showcase-desc,
.about-content-desc,
.inno-para,
.section-desc-new,
.tech-wide-row td,
.tech-table-data-row td,
.bull-modal-form input,
.bull-modal-form label{
  font-size:var(--fs-body) !important;
}

/* Section titles / card headings */
h2,
h3,
.section-title-new,
.bull-title h2,
.media-title-main,
.cont-form-title,
.product-name-title,
.about-content-title,
.product-row h2,
.product-row h3,
.bull-product-card h3,
.bull-cta-box h2,
.bull-modal-header h3,
.glass-mega-heading h3,
.inno-title,
.products-list-container h2,
.tech-info-section h2{
  font-size:var(--fs-title) !important;
  line-height:1.15 !important;
}

/* Main / hero headings */
h1,
.products-hero h1,
.about-hero-title,
.bull-hero-title,
.hero-text-card h1,
.hero-text-card h2,
.bull-hero h1{
  font-size:var(--fs-hero) !important;
  line-height:1.08 !important;
}

/* Stats stay visually strong but within the title size */
.details-con-one,
.details-con-one strong,
.details-cells .details-con-one{
  font-size:var(--fs-title) !important;
}

/* Header logo/product card text stays consistent */
.glass-product-copy strong,
.drop-img-tit{
  font-size:var(--fs-body) !important;
}

/* =========================================================
   HOME — LEGACY / PERFORMANCE SECTION VISIBILITY FIX
   ========================================================= */
#innovation{
  padding:56px 0 !important;
}

#innovation .inno-main{
  width:min(92%,1180px) !important;
  margin:0 auto !important;
  padding:42px 36px !important;
  min-height:340px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:28px !important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.88),rgba(255,255,255,.74)) !important;
  border:1px solid rgba(255,255,255,.94) !important;
  box-shadow:0 18px 48px rgba(0,0,0,.09) !important;
  -webkit-backdrop-filter:blur(22px) saturate(150%) !important;
  backdrop-filter:blur(22px) saturate(150%) !important;
  color:#1d1d1d !important;
}

#innovation .inno-part-one{
  width:min(100%,820px) !important;
  margin:0 auto !important;
}

#innovation .inno-title{
  margin:0 0 18px !important;
  color:#171717 !important;
  font-weight:800 !important;
  letter-spacing:-.03em !important;
  text-shadow:none !important;
}

#innovation .inno-para{
  margin:0 auto !important;
  color:#4b4b4b !important;
  line-height:1.75 !important;
  font-weight:500 !important;
  text-shadow:none !important;
  opacity:1 !important;
}

/* Avoid inherited white text inside this light glass card */
#innovation .inno-main *,
#innovation .inno-part-one *{
  text-shadow:none !important;
}

#innovation .inno-main .inno-title{
  color:#171717 !important;
}

#innovation .inno-main .inno-para{
  color:#4b4b4b !important;
}

/* Construction section spacing and visual hierarchy */
#construct{
  padding-top:48px !important;
}

#construct .section-title-new{
  margin-bottom:10px !important;
  font-weight:800 !important;
  letter-spacing:-.035em !important;
}

/* Footer headings/body fit same 4-size system */
#footer h1,
#footer h2,
#footer h3,
#footer h4,
#footer h5,
#footer h6{
  font-size:var(--fs-body) !important;
}

/* Responsive keeps same 4-size system, only spacing changes */
@media(max-width:767px){
  #innovation{
    padding:34px 0 !important;
  }

  #innovation .inno-main{
    width:calc(100% - 24px) !important;
    min-height:auto !important;
    padding:28px 20px !important;
    border-radius:22px !important;
  }

  #innovation .inno-para{
    line-height:1.65 !important;
  }
}


/* Final authority: all visible text starts at body size. */
html body *{
  font-size:var(--fs-body) !important;
}

/* Re-apply the only allowed exceptions with higher specificity. */
html body .product-category,
html body .about-content-tag,
html body .glass-eyebrow,
html body .drop-column-title,
html body .glass-product-copy span,
html body .glass-mobile-foot,
html body .badge,
html body .foot-cont-follow2,
html body .tech-spec-table thead th,
html body .tech-wide-section th,
html body .tech-table-section-row th,
html body .media-folder-title,
html body .bull-small-black,
html body .bull-gold-title{
  font-size:var(--fs-label) !important;
}

html body h2,
html body h3,
html body .section-title-new,
html body .bull-title h2,
html body .media-title-main,
html body .cont-form-title,
html body .product-name-title,
html body .about-content-title,
html body .inno-title,
html body .tech-info-section h2,
html body .details-con-one,
html body .details-con-one strong{
  font-size:var(--fs-title) !important;
}

html body h1,
html body .products-hero h1,
html body .about-hero-title,
html body .bull-hero-title,
html body .hero-text-card h1,
html body .hero-text-card h2,
html body .bull-hero h1{
  font-size:var(--fs-hero) !important;
}
