/**
 * Atlas typography — industrial B2B scale (not AI-landing defaults).
 * IBM Plex Sans + Source Serif 4
 */
:root{
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --sans:"IBM Plex Sans",Arial,Helvetica,sans-serif;
  --fs-body:15px;
  --lh-body:1.55;
  --fs-h1:clamp(2rem,3.6vw,3.15rem);
  --fs-h2:clamp(1.65rem,2.8vw,2.45rem);
  --fs-h3:1.05rem;
  --fs-small:12px;
  --fs-eyebrow:10px;
  --tracking-eyebrow:.08em;
}

html{font-size:16px}
body,
body.atlas-public{
  font-family:var(--sans) !important;
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  font-weight:400;
  letter-spacing:0;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

body.atlas-public h1,
body.atlas-public h2,
body.atlas-public h3,
.atlas-category-page h1,
.atlas-category-page h2,
.atlas-category-page h3,
.atlas-inventory-hub h1,
.atlas-inventory-hub h2,
.atlas-about-page h1,
.atlas-about-page h2,
.atlas-hiw-page h1,
.atlas-hiw-page h2,
.atlas-why-page h1,
.atlas-why-page h2,
.atlas-service-page h1,
.atlas-service-page h2{
  font-family:var(--serif) !important;
  font-weight:600;
  letter-spacing:-.015em;
  line-height:1.15;
}

body.atlas-public h1,
.atlas-category-page h1,
.atlas-inventory-hub h1,
.atlas-about-page h1,
.atlas-hiw-page h1,
.atlas-why-page h1,
.atlas-service-page h1,
.hero h1,
.ar-hero h1,
.ar-hero-copy h1,
.page-hero h1,
.marketing-hero h1{
  font-size:var(--fs-h1) !important;
  margin-top:0;
}

body.atlas-public h2,
.atlas-category-page h2,
.atlas-inventory-hub h2,
.atlas-about-page h2,
.atlas-hiw-page h2,
.atlas-why-page h2,
.atlas-service-page h2,
.head h2,
.center h2,
.cta h2,
.final-cta h2{
  font-size:var(--fs-h2) !important;
}

body.atlas-public h3,
.atlas-category-page h3,
.atlas-inventory-hub h3,
.card h3,
.hero-panel h3,
.hero-card h3,
.ar-hero-card h3{
  font-size:var(--fs-h3) !important;
  font-family:var(--sans) !important;
  font-weight:650;
  letter-spacing:-.01em;
  line-height:1.3;
}

body.atlas-public p,
.atlas-category-page p,
.atlas-inventory-hub p{
  font-size:var(--fs-body);
  line-height:var(--lh-body);
}

.eyebrow,
.atlas-category-page .eyebrow,
.atlas-inventory-hub .eyebrow{
  font-family:var(--sans) !important;
  font-size:var(--fs-eyebrow) !important;
  font-weight:700 !important;
  letter-spacing:var(--tracking-eyebrow) !important;
}

.brand strong{
  font-family:var(--sans) !important;
  font-size:14px !important;
  font-weight:700;
  letter-spacing:.02em !important;
}
.brand small{
  font-size:8px !important;
  letter-spacing:.12em !important;
  font-weight:600;
}

.menu a,
.nav-primary a{
  font-family:var(--sans) !important;
  font-size:12.5px !important;
  font-weight:600 !important;
}

.btn,
a.btn,
button.btn,
.atlas-category-page .btn,
.atlas-inventory-hub .btn{
  font-family:var(--sans) !important;
  font-size:12px !important;
  font-weight:700 !important;
  letter-spacing:.01em;
}

.top{font-size:11px !important}
.site-footer-source,
.site-footer-source p,
.site-footer-source a,
.site-footer-source li{font-size:12px !important;line-height:1.5}
.site-footer-source h4{
  font-family:var(--sans) !important;
  font-size:11px !important;
  font-weight:700;
  letter-spacing:.08em;
}

.card p,
.trust-item small,
.condition small,
.check p,
.faq small,
.faq-item small,
.meta,
.atlas-product-card .meta{font-size:12px !important;line-height:1.45}
.card h3,
.atlas-product-card h3{font-size:14px !important;font-family:var(--sans) !important}
.atlas-product-card .price{font-size:20px !important;font-family:var(--sans) !important}

/* Soften oversized hero clamps from extracted pages */
.atlas-category-page .hero h1,
.atlas-category-page .ar-hero-copy h1,
.atlas-hiw-page .hero h1,
.atlas-about-page .hero h1,
.atlas-why-page .hero h1{
  font-size:clamp(2rem,3.8vw,3.25rem) !important;
  line-height:1.12 !important;
  letter-spacing:-.018em !important;
}

@media(max-width:760px){
  :root{
    --fs-body:14.5px;
    --fs-h1:clamp(1.85rem,7vw,2.4rem);
    --fs-h2:clamp(1.5rem,5.5vw,1.95rem);
  }
}
