/* Shared readability and CTA fixes for the whole site */
body{
  font-family:'DM Sans',system-ui,sans-serif !important;
  font-size:16px;
  line-height:1.72;
  text-rendering:optimizeLegibility;
  -webkit-text-size-adjust:100%;
}

p,li,dd,td,th{
  line-height:1.7;
}

/* Improve common body copy sizing/contrast */
.hero p.lede,
.pd-info p.lede,
.pd-hero p.lede,
.pd-spec dd,
.pd-spec p,
.materials-box p,
.materials-band p,
.feat p,
.about-copy p,
.cap-item p,
.cinfo-row p,
.cinfo-note,
.form-note,
.foot-brand p,
.foot-col a,
.foot-addr,
.prod-body p,
.prod-spec span,
.gal-head p,
.ind small,
.metric .lbl,
.metrics-row .lbl,
.contact-line,
.foot-bottom small{
  font-family:'DM Sans',system-ui,sans-serif !important;
  font-size:15px;
}

.foot-col a,
.cinfo-note,
.form-note,
.prod-body p,
.pd-info p.lede,
.pd-hero p.lede,
.about-copy p,
.cap-item p,
.materials-box p,
.materials-band p,
.feat p,
.gal-head p,
.ind small,
.metric .lbl,
.metrics-row .lbl,
.contact-line,
.foot-brand p,
.foot-addr{
  font-family:'DM Sans',system-ui,sans-serif !important;
  color:#4f4f4f;
}

h1,h2,h3,
.brand-name,
.nav-cta,
.btn-primary,
.btn-ghost,
.side-cta,
.prod-more,
.mobile-panel a,
.ind b,
.feat h3,
.rel b{
  font-family:'Plus Jakarta Sans',sans-serif !important;
}

.eyebrow,
.crumb,
.brand-sub,
.menu-btn,
.drop-toggle,
.nav-links a,
.drop-menu a,
.foot-col h4,
.foot-bottom small,
.prod-tag,
.prod-spec span,
.std-chips span,
.matrix th,
.dl-row dt,
.sec-label,
.cinfo-row b,
.field label,
.contact-line,
.tag,
.strip-item,
.gal-item small,
.cap-num,
.metrics-row .lbl,
.metric .lbl,
.ind small{
  font-family:'Google Sans',sans-serif !important;
}

.mono{
  font-family:'Google Sans',sans-serif !important;
}

/* Make the reusable CTA section readable on every page */
.cta{
  background:linear-gradient(135deg,#7d1111 0%,#b11515 42%,#d42020 100%) !important;
  color:#ffffff !important;
}

.cta .cta-glow{
  background:radial-gradient(ellipse 60% 80% at 50% 120%,rgba(255,255,255,.16),transparent 72%) !important;
}

.cta .cta-inner{
  max-width:760px;
}

.cta .eyebrow{
  color:rgba(255,255,255,.9) !important;
}

.cta .eyebrow::before{
  background:rgba(255,255,255,.8) !important;
  opacity:.75;
}

.cta h2,
.cta h2 .accent,
.cta p,
.cta .contact-line,
.cta .contact-line a{
  color:#ffffff !important;
}

.cta p{
  font-size:18px;
  line-height:1.75;
  max-width:560px;
  margin-left:auto;
  margin-right:auto;
}

.cta .contact-line a{
  border-color:rgba(255,255,255,.45) !important;
}

.cta .btn-ghost{
  color:#ffffff !important;
  border-color:rgba(255,255,255,.7) !important;
  background:transparent !important;
}

.cta .btn-ghost:hover{
  background:rgba(255,255,255,.12) !important;
}

.cta .btn-primary{
  box-shadow:0 10px 30px -10px rgba(0,0,0,.25) !important;
}

/* Slightly larger hero and section copy where pages were feeling cramped */
.hero p.lede,
.pd-info p.lede,
.pd-hero p.lede,
section.light .sec-head p,
section.dark2 .sec-head p,
.cinfo p,
.cinfo-note,
.form-note{
  font-size:16px;
}

/* Make small labels clearer without changing the overall layout */
.eyebrow,
.crumb,
.brand-sub,
.menu-btn,
.drop-toggle,
.nav-links a,
.drop-menu a,
.foot-col h4,
.foot-bottom small,
.prod-tag,
.prod-spec span,
.std-chips span,
.matrix th,
.dl-row dt,
.sec-label,
.cinfo-row b,
.field label,
.contact-line,
.tag,
.strip-item,
.gal-item small,
.cap-num,
.metrics-row .lbl,
.metric .lbl,
.ind small{
  letter-spacing:.05em;
}

